[jira] [Commented] (GEODE-8272) Refactor GFSH Restore Redundancy Command code to allow for REST API

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

jinmeiliao merged pull request #5249:
URL: https://github.com/apache/geode/pull/5249


   



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


> Refactor GFSH Restore Redundancy Command code to allow for REST API
> ---
>
> Key: GEODE-8272
> URL: https://issues.apache.org/jira/browse/GEODE-8272
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Mark Hanson
>Assignee: Mark Hanson
>Priority: Major
>
> Refactor GFSH Restore Redundancy Command code to allow for REST API
>  
> The core code path is specific to GFSH right now and needs a few changes to 
> support the REST API command.



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


[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

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



##
File path: cppcache/src/PdxType.cpp
##
@@ -568,16 +568,32 @@ bool PdxType::operator<(const PdxType& other) const {
   return false;
 }
 
-int32_t PdxType::hashcode() const {
+bool PdxType::operator==(const PdxType& other) const {
+  if (this->m_className != other.m_className){
+return false;
+  }
+
+  if(this->m_noJavaClass != other.m_noJavaClass){
+return false;
+  }
+
+  if(this->getTotalFields() != other.getTotalFields()){
+return false;
+  }
+
+  //TODO: Compare m_pdxFieldTypes & other.m_pdxFieldTypes;
+  return true;
+}
+
+size_t PdxType::hashcode() const {
   std::hash strHash;
-  auto result=strHash(this->m_className);
+  auto result = strHash(this->m_className);
 
-  for (std::vector>::iterator it =
-  m_pdxFieldTypes->begin();
+  for (auto it = m_pdxFieldTypes->begin();

Review comment:
   Can we use a range `for` loop here.

##
File path: cppcache/src/PdxType.cpp
##
@@ -568,16 +568,32 @@ bool PdxType::operator<(const PdxType& other) const {
   return false;
 }
 
-int32_t PdxType::hashcode() const {
+bool PdxType::operator==(const PdxType& other) const {
+  if (this->m_className != other.m_className){
+return false;
+  }
+
+  if(this->m_noJavaClass != other.m_noJavaClass){
+return false;
+  }
+
+  if(this->getTotalFields() != other.getTotalFields()){
+return false;
+  }
+
+  //TODO: Compare m_pdxFieldTypes & other.m_pdxFieldTypes;

Review comment:
   What's with the new TODO?

##
File path: cppcache/src/PdxType.hpp
##
@@ -205,10 +205,25 @@ class PdxType : public internal::DataSerializableInternal,
   // This is for PdxType as key in std map.
   bool operator<(const PdxType& other) const;
 
-  int32_t hashcode() const;
+  bool operator==(const PdxType& other) const;
+
+  size_t hashcode() const;
 };
 }  // namespace client
 }  // namespace geode
 }  // namespace apache
 
+namespace std {
+
+template <>
+struct hash {
+  typedef apache::geode::client::PdxType argument_type;
+  typedef size_t result_type;
+  result_type operator()(const argument_type& val) const {
+return val.hashcode();

Review comment:
   Technically we can take the `hashcode` method off the `PdxType` and line 
it here. The hash is only used for `std::hash` so let's not split it across the 
two classes.

##
File path: cppcache/src/PdxType.hpp
##
@@ -205,10 +205,25 @@ class PdxType : public internal::DataSerializableInternal,
   // This is for PdxType as key in std map.
   bool operator<(const PdxType& other) const;

Review comment:
   If we aren't going to use the std::map anymore perhaps we should remove 
this `operator<`.





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed Time (serializePdx): 1.53206 milliseconds​
> {noformat}
> While these are the times using the 

[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

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



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   And now I think we see why PdxTests::PdxType existed in the first place. 
 apache::geode::client::PdxType is hidden in the library.  The following fixes 
linker errors for me, in cppcache/src/PdxType.hpp:
   ```
   - class PdxType
   + class APACHE_GEODE_EXPORT PdxType
   ```
   But now we need to have the more philosophical question about whether or not 
this is the right thing to do.  If we _are_ going to export PdxType, the header 
needs to move from cppcache/src to cppcache/include/geode.  @pivotal-jbarrett 
any opinion/suggestion?
   





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 

[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

alb3rtobr commented on a change in pull request #619:
URL: https://github.com/apache/geode-native/pull/619#discussion_r442559744



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   > the following change worked for me on line 183 (the first spot I was 
hitting a compiler gripe):
   
   Nice, its simpler that the code I have just added. Now with the current 
code, you should see the linker error I was not able to solve:
   
   ```
   PdxJsonTypeTest.cpp:166: undefined reference to 
`apache::geode::client::PdxType::PdxType(apache::geode::client::PdxTypeRegistry&,
 std::__cxx11::basic_string, std::allocator 
> const&, bool)'
   ... 
   and more linker errors from this point
   ```
   





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 

[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

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



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   After commenting out the using statement for PdxTest::PdxType, I found 
the declaration of std::hash wasn't correct in the code (trying to pass 1 param 
to ctor).  the following change worked for me on line 183 (the first spot I was 
hitting a compiler gripe):
   
   ```-   
EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
   +   EXPECT_EQ(std::hash{}(m_pdxType1), 
std::hash{}(m_pdxType2));
   ```
   I expect the rest are similar...

##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  

[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

alb3rtobr commented on a change in pull request #619:
URL: https://github.com/apache/geode-native/pull/619#discussion_r442558585



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   The first linker error is the following:
   
   ```
   PdxJsonTypeTest.cpp:166: undefined reference to 
`apache::geode::client::PdxType::PdxType(apache::geode::client::PdxTypeRegistry&,
 std::__cxx11::basic_string, std::allocator 
> const&, bool)'
   ```





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed Time (serializePdx): 1.53206 milliseconds​
> {noformat}
> While these are the times using the old "<" operator:
> {noformat}
> Elapsed Time (serializePdx): 56.1524 

[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

alb3rtobr commented on a change in pull request #619:
URL: https://github.com/apache/geode-native/pull/619#discussion_r442558200



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   Thank to your comment I have realized the assertions are wrong. Thing is 
that in the assertions I was using `m_pdxType1.hashcode()` instead of 
`std::hash(m_pdxType1)`, that was a change I did right before adding 
the commit with the tests to the PR and its causing the compilation to fail in 
other place different than the linker error I was asking for. I have just added 
the correct code of the assertions.
   
   
   





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed 

[jira] [Closed] (GEODE-8241) Locator does not observe locator-wait-time

2020-06-18 Thread Aaron Lindsey (Jira)


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

Aaron Lindsey closed GEODE-8241.


> Locator does not observe locator-wait-time
> --
>
> Key: GEODE-8241
> URL: https://issues.apache.org/jira/browse/GEODE-8241
> Project: Geode
>  Issue Type: Bug
>Reporter: Aaron Lindsey
>Assignee: Aaron Lindsey
>Priority: Major
> Fix For: 1.14.0
>
>
> In the case where a locator starts up and is unable to connect to any other 
> locators, it may decide to become the membership coordinator even if 
> locator-wait-time has not elapsed.
> The following conditional from GMSJoinLeave.java causes the issue. There 
> should be an additional check for locator-wait-time before becoming 
> coordinator.
> {code:java}
> if (state.joinedMembersContacted <= 0 &&
> (tries >= minimumRetriesBeforeBecomingCoordinator ||
> state.locatorsContacted >= locators.size())) {
>   synchronized (viewInstallationLock) {
> becomeCoordinator();
>   }
>   return true;
> }
> {code}



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


[jira] [Resolved] (GEODE-8241) Locator does not observe locator-wait-time

2020-06-18 Thread Aaron Lindsey (Jira)


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

Aaron Lindsey resolved GEODE-8241.
--
Fix Version/s: 1.14.0
   Resolution: Fixed

> Locator does not observe locator-wait-time
> --
>
> Key: GEODE-8241
> URL: https://issues.apache.org/jira/browse/GEODE-8241
> Project: Geode
>  Issue Type: Bug
>Reporter: Aaron Lindsey
>Assignee: Aaron Lindsey
>Priority: Major
> Fix For: 1.14.0
>
>
> In the case where a locator starts up and is unable to connect to any other 
> locators, it may decide to become the membership coordinator even if 
> locator-wait-time has not elapsed.
> The following conditional from GMSJoinLeave.java causes the issue. There 
> should be an additional check for locator-wait-time before becoming 
> coordinator.
> {code:java}
> if (state.joinedMembersContacted <= 0 &&
> (tries >= minimumRetriesBeforeBecomingCoordinator ||
> state.locatorsContacted >= locators.size())) {
>   synchronized (viewInstallationLock) {
> becomeCoordinator();
>   }
>   return true;
> }
> {code}



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


[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

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



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   Oh yeah forgot about that test object. It but me a few times too and 
thought it should be renamed. I assumed you tried the fully qualified name on 
the line 204 too?





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed Time (serializePdx): 1.53206 milliseconds​
> {noformat}
> While these are the times using the old "<" operator:
> {noformat}
> Elapsed Time (serializePdx): 56.1524 milliseconds
> Elapsed Time (serializePdx): 0.012327 milliseconds
> Elapsed Time 

[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

alb3rtobr commented on a change in pull request #619:
URL: https://github.com/apache/geode-native/pull/619#discussion_r442548151



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   Thanks for the suggestion, but it did not solve the problem. I used the 
fully qualified name in the lines you mention because there is other PdxType 
class used in the namespace.
   
   `using PdxTests::PdxType;`





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed Time (serializePdx): 1.53206 milliseconds​
> {noformat}
> While these are the times using the old "<" operator:
> {noformat}
> Elapsed Time (serializePdx): 56.1524 milliseconds
> Elapsed Time (serializePdx): 

[jira] [Resolved] (GEODE-8237) Add note about 'alter region' and cluster conf service in doc

2020-06-18 Thread Alberto Bustamante Reyes (Jira)


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

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

> Add note about 'alter region' and cluster conf service in doc
> -
>
> Key: GEODE-8237
> URL: https://issues.apache.org/jira/browse/GEODE-8237
> 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
>
>
> When cluster configuration service is activated and "alter region" command is 
> applied on a region that was created via cache.xml, the command fails.
> This behavior is ok but it is not documented.



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


[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

alb3rtobr commented on a change in pull request #619:
URL: https://github.com/apache/geode-native/pull/619#discussion_r442548151



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   Thanks for the suggestion, but it did not solve the problem. I used the 
fully qualified name in the lines you mention because there is other PdxType 
class used in the namespace.





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed Time (serializePdx): 1.53206 milliseconds​
> {noformat}
> While these are the times using the old "<" operator:
> {noformat}
> Elapsed Time (serializePdx): 56.1524 milliseconds
> Elapsed Time (serializePdx): 0.012327 milliseconds
> Elapsed Time 

[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

alb3rtobr commented on a change in pull request #619:
URL: https://github.com/apache/geode-native/pull/619#discussion_r442548151



##
File path: cppcache/integration/test/PdxJsonTypeTest.cpp
##
@@ -142,4 +146,91 @@ TEST(PdxJsonTypeTest, testTwoConsecutiveGets) {
   std::dynamic_pointer_cast(region2->get("simpleObject")));
 }
 
+TEST(PdxJsonTypeTest, testTwoObjectsWithSameFieldsHaveTheSameHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+.create()
+.region()
+.withName("region")
+.withType("REPLICATE")
+.execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_EQ(std::hash(m_pdxType1),std::hash(m_pdxType2));
+}
+
+TEST(PdxJsonTypeTest, testTwoObjectsWithDifferentFieldsHaveDifferentHash) {
+  Cluster cluster{LocatorCount{1}, ServerCount{1}};
+  cluster.start();
+  cluster.getGfsh()
+  .create()
+  .region()
+  .withName("region")
+  .withType("REPLICATE")
+  .execute();
+
+  auto cache = cluster.createCache();
+
+  auto properties = std::make_shared();
+  CacheImpl cacheImpl(, properties, false, false, nullptr);
+
+  PdxTypeRegistry pdxTypeRegistry();
+
+  apache::geode::client::PdxType m_pdxType1(pdxTypeRegistry, 
gemfireJsonClassName,false);
+  apache::geode::client::PdxType m_pdxType2(pdxTypeRegistry, 
gemfireJsonClassName,false);
+
+  m_pdxType1.addVariableLengthTypeField("bar0", "string", 
PdxFieldTypes::STRING);
+  m_pdxType1.addVariableLengthTypeField("bar1", "string", 
PdxFieldTypes::STRING);
+
+  m_pdxType2.addVariableLengthTypeField("bar2", "string", 
PdxFieldTypes::STRING);
+  m_pdxType2.addVariableLengthTypeField("bar3", "string", 
PdxFieldTypes::STRING);
+
+  EXPECT_NE(std::hash(m_pdxType1),std::hash(m_pdxType2));

Review comment:
   Thanks for the suggestion, but it did not solve the problem. I used the 
fully qualified name in the lines you mention because there is other PdxType 
class imported used in the namespace.





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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed Time (serializePdx): 1.53206 milliseconds​
> {noformat}
> While these are the times using the old "<" operator:
> {noformat}
> Elapsed Time (serializePdx): 56.1524 milliseconds
> Elapsed Time (serializePdx): 0.012327 milliseconds
> 

[jira] [Commented] (GEODE-8216) SerialWANPersistenceEnabledGatewaySenderOffHeapDUnitTest.testReplicatedRegionPersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived FAILED

2020-06-18 Thread Mark Hanson (Jira)


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

Mark Hanson commented on GEODE-8216:


Running develop as of a few minutes ago... using this command...

./gradlew geode-wan:repeatDistributedTest -Prepeat=5 -PdunitParallelForks=2 
--tests SerialWANPersistenceEnabledGatewaySenderDUnitTest

gets this result...

 

org.apache.geode.internal.cache.wan.offheap.SerialWANPersistenceEnabledGatewaySenderOffHeapDUnitTest
 > 
testReplicatedRegionPersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived
 FAILED

    org.apache.geode.test.dunit.RMIException: While invoking 
org.apache.geode.internal.cache.wan.serial.SerialWANPersistenceEnabledGatewaySenderDUnitTest$$Lambda$174/1763107236.run
 in VM 2 running on Host localhost with 8 VMs

 

        Caused by:

        org.awaitility.core.ConditionTimeoutException: Assertion condition 
defined as a lambda expression in 
org.apache.geode.internal.cache.wan.WANTestBase that uses int, 
intorg.apache.geode.cache.Region Expected region entries: 0 but actual entries: 
40 present region keyset [31, 22, 12, 20, 27, 6, 13, 34, 19, 33, 5, 28, 18, 25, 
7, 0, 36, 26, 8, 35, 17, 2, 37, 9, 30, 23, 10, 16, 29, 15, 1, 38, 24, 21, 14, 
3, 39, 32, 11, 4] expected:<0> but was:<40> within 5 minutes.

 

            Caused by:

            java.lang.AssertionError: Expected region entries: 0 but actual 
entries: 40 present region keyset [31, 22, 12, 20, 27, 6, 13, 34, 19, 33, 5, 
28, 18, 25, 7, 0, 36, 26, 8, 35, 17, 2, 37, 9, 30, 23, 10, 16, 29, 15, 1, 38, 
24, 21, 14, 3, 39, 32, 11, 4] expected:<0> but was:<40>

 

I think this is still not quite perfect.

> SerialWANPersistenceEnabledGatewaySenderOffHeapDUnitTest.testReplicatedRegionPersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived
>  FAILED
> 
>
> Key: GEODE-8216
> URL: https://issues.apache.org/jira/browse/GEODE-8216
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Mark Hanson
>Assignee: Mario Ivanac
>Priority: Major
>  Labels: ci
> Fix For: 1.14.0
>
> Attachments: geode-8216-logs.tgz
>
>
> Test failure 
> {noformat}
> org.apache.geode.internal.cache.wan.offheap.SerialWANPersistenceEnabledGatewaySenderOffHeapDUnitTest
>  > 
> testReplicatedRegionPersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived
>  FAILED
> 11:25:56org.apache.geode.test.dunit.RMIException: While invoking 
> org.apache.geode.internal.cache.wan.serial.SerialWANPersistenceEnabledGatewaySenderDUnitTest$$Lambda$182/1489068907.run
>  in VM 2 running on Host 40c25330a7e0 with 8 VMs
> 11:25:56
> 11:25:56Caused by:
> 11:25:56org.awaitility.core.ConditionTimeoutException: Assertion 
> condition defined as a lambda expression in 
> org.apache.geode.internal.cache.wan.WANTestBase that uses int, 
> intorg.apache.geode.cache.Region Expected region entries: 0 but actual 
> entries: 10 present region keyset [6, 5, 7, 0, 8, 9, 2, 1, 3, 4] expected:<0> 
> but was:<10> within 5 minutes.
> 11:25:56
> 11:25:56Caused by:
> 11:25:56java.lang.AssertionError: Expected region entries: 0 but 
> actual entries: 10 present region keyset [6, 5, 7, 0, 8, 9, 2, 1, 3, 4] 
> expected:<0> but was:<10>
> 11:33:48 {noformat}
>  
>  
> [https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/229]
> {noformat}
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=  Test Results URI 
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0098/test-results/distributedTest/1591126795/
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> Test report artifacts from this job are available at:
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0098/test-artifacts/1591126795/distributedtestfiles-OpenJDK8-1.14.0-build.0098.tgz
>  {noformat}



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


[jira] [Resolved] (GEODE-8274) Improve readability of Version comparisons

2020-06-18 Thread Jacob Barrett (Jira)


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

Jacob Barrett resolved GEODE-8274.
--
Fix Version/s: 1.14.0
   Resolution: Fixed

> Improve readability of Version comparisons
> --
>
> Key: GEODE-8274
> URL: https://issues.apache.org/jira/browse/GEODE-8274
> Project: Geode
>  Issue Type: Improvement
>  Components: serialization
>Reporter: Jacob Barrett
>Assignee: Jacob Barrett
>Priority: Major
> Fix For: 1.14.0
>
>
> Currently Version comparisons are done with {{Version.compareTo(Version) <=> 
> 0}} operations. It is difficult to reason with some of the combinations to 
> understand if we are looking for newer or older versions. Convert to some 
> natural language style like {{Version.isNewerThan(Version)}}. 



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


[jira] [Commented] (GEODE-8149) Introduce new parameter to control the feature

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

pivotal-jbarrett commented on pull request #5139:
URL: https://github.com/apache/geode/pull/5139#issuecomment-646339798


   @jvarenina How about you close this PR until that is resolved then.



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


> Introduce new parameter to control the feature
> --
>
> Key: GEODE-8149
> URL: https://issues.apache.org/jira/browse/GEODE-8149
> Project: Geode
>  Issue Type: Sub-task
>Reporter: Jakov Varenina
>Assignee: Jakov Varenina
>Priority: Major
>
> * New parameter _security-cn-auth-enabled_ (default value "false") parameter 
> should be introduced to control this new feature. It should be allowed to set 
> only if mutual SSL is enabled on all components: _ssl- 
> ssl-require-authentication == true && ssl-web-require-authentication == true 
> && ssl-enabled-components==(ALL or all components listed) && 
> security-manager.isSet == true_
>  * New property _security-common-name_ for _security-manager.authentication_ 
> method should be introduced
>  * New integration and unit tests



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


[jira] [Commented] (GEODE-8251) exception creating domain.Configuration stops locator startup after rolling upgrade

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

jinmeiliao commented on a change in pull request #5257:
URL: https://github.com/apache/geode/pull/5257#discussion_r442533132



##
File path: 
geode-core/src/upgradeTest/java/org/apache/geode/internal/cache/rollingupgrade/RollingUpgrade2DUnitTestBase.java
##
@@ -1185,6 +1185,8 @@ Properties getLocatorProperties(String locatorsString, 
boolean enableCC) {
 props.setProperty(DistributionConfig.LOCATORS_NAME, locatorsString);
 props.setProperty(DistributionConfig.LOG_LEVEL_NAME, 
DUnitLauncher.logLevel);
 props.setProperty(DistributionConfig.ENABLE_CLUSTER_CONFIGURATION_NAME, 
enableCC + "");
+// do not start http service to avoid port conflict between upgrade tests
+props.setProperty(DistributionConfig.HTTP_SERVICE_PORT_NAME, "0");

Review comment:
   here 0 means do not start.





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


> exception creating domain.Configuration stops locator startup after rolling 
> upgrade
> ---
>
> Key: GEODE-8251
> URL: https://issues.apache.org/jira/browse/GEODE-8251
> Project: Geode
>  Issue Type: Bug
>  Components: configuration
>Affects Versions: 1.13.0
>Reporter: Bill Burcham
>Assignee: Jinmei Liao
>Priority: Major
>  Labels: GeodeOperationAPI
>
> As reported on the dev@geode mailing list 
> https://markmail.org/message/qfnnj2s2x7dzbnzx and shown in the 
> {{testRollingUpgradeOfGeodeWithGfs}} test in PR: 
> https://github.com/apache/geode/pull/5224, if custom Jars are deployed, the 
> locator doesn't start after a rolling upgrade and we see:
> {code}
> org.apache.geode.SerializationException: Could not
> create an instance of
> org.apache.geode.management.internal.configuration.domain.Configuration
> {code}



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


[jira] [Updated] (GEODE-8281) GFSH configure PDX overrides previously set values

2020-06-18 Thread Jason Huynh (Jira)


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

Jason Huynh updated GEODE-8281:
---
Issue Type: Bug  (was: New Feature)

> GFSH configure PDX overrides previously set values
> --
>
> Key: GEODE-8281
> URL: https://issues.apache.org/jira/browse/GEODE-8281
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Jason Huynh
>Priority: Major
>
> When configuring pdx using gfsh, if I configure the pdx disk store and then 
> the read-serialized on a different command, it overrides the persistent value 
> to false.
> {code:java}
> gfsh>configure pdx --disk-store=new-diskstore
>  read-serialized = false
>  ignore-unread-fields = false
>  persistent = true
>  disk-store = new-diskstore
>  Cluster configuration for group 'cluster' is updated.
> gfsh>configure pdx --read-serialized=true
>  read-serialized = true
>  ignore-unread-fields = false
>  persistent = false
>  Cluster configuration for group 'cluster' is updated.{code}
>  
> The documentation for this feature also shows the same type of behavior 
> (order of operations has been flipped)
> gfsh>configure pdx --read-serialized=true
> persistent = false
> read-serialized = true
> ignore-unread-fields = false
> gfsh>configure pdx --disk-store=/home/username/server4/DEFAULT.drf
> persistent = true
> disk-store = /home/username/server4/DEFAULT.drf
> read-serialized = false
> ignore-unread-fields = false
> Docs for Configure Pdx should probably also be updated when this is fixed and 
> also not point to a drf file as the directory.
>  
>  
> [~nnag] notes that it looks like it has to do with the following 
> unspecifiedDefaultValue options
> @CliOption(key = CliStrings.CONFIGURE_PDX__READ__SERIALIZED,
>   unspecifiedDefaultValue = "false",
>  
>  



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


[jira] [Updated] (GEODE-8282) Creating diskstore with size appened to name doesn't seem to work as documented

2020-06-18 Thread Jason Huynh (Jira)


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

Jason Huynh updated GEODE-8282:
---
Issue Type: Bug  (was: New Feature)

> Creating diskstore with size appened to name doesn't seem to work as 
> documented
> ---
>
> Key: GEODE-8282
> URL: https://issues.apache.org/jira/browse/GEODE-8282
> Project: Geode
>  Issue Type: Bug
>Reporter: Jason Huynh
>Priority: Major
>
> The create diskstore --dir option is documented with:
> ...Optionally, directory names may be followed by {{#}} and the maximum 
> number of megabytes that the disk store can use in the directory. For example:
> {code:java}
> --dir=/data/ds1 
> --dir=/data/ds2#5000
> {code}
> When creating a disk store through gfsh with the size appended, it does not 
> appear to limit the size of the directory.  There also doesn't seem to be 
> much validation...
> for example, when using a negative value we can see that the size described 
> does not match what we expected to be our limit.
> {code:java}
> gfsh>describe disk-store --name=diskstore-2#-1000 --member=server1
> Disk Store ID  : 643cb4b4-3cb0-40ec-b123-6945b23f165a
> Disk Store Name: diskstore-2#-1000
> Member ID  : 192.168.0.3(server1:16006):41001
> Member Name: server1
> Allow Force Compaction : No
> Auto Compaction: Yes
> Compaction Threshold   : 50
> Max Oplog Size : 1024
> Queue Size : 0
> Time Interval  : 1000
> Write Buffer Size  : 32768
> Disk Usage Warning Percentage  : 90.0
> Disk Usage Critical Percentage : 99.0
> PDX Serialization Meta-Data Stored : No
>   Disk Directory| Size
> --- | 
> --
> /Users/jhuynh/apache-geode-1.12.0/bin/server1 | 2147483647
> {code}
> It also appears in code to only affect calculation of disk usage etc, but I 
> didn't dig very deep.  If it is used there, the negative value will probably 
> mess with that calculation.



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


[jira] [Created] (GEODE-8282) Creating diskstore with size appened to name doesn't seem to work as documented

2020-06-18 Thread Jason Huynh (Jira)
Jason Huynh created GEODE-8282:
--

 Summary: Creating diskstore with size appened to name doesn't seem 
to work as documented
 Key: GEODE-8282
 URL: https://issues.apache.org/jira/browse/GEODE-8282
 Project: Geode
  Issue Type: New Feature
Reporter: Jason Huynh


The create diskstore --dir option is documented with:

...Optionally, directory names may be followed by {{#}} and the maximum number 
of megabytes that the disk store can use in the directory. For example:

{code:java}
--dir=/data/ds1 
--dir=/data/ds2#5000
{code}


When creating a disk store through gfsh with the size appended, it does not 
appear to limit the size of the directory.  There also doesn't seem to be much 
validation...
for example, when using a negative value we can see that the size described 
does not match what we expected to be our limit.

{code:java}
gfsh>describe disk-store --name=diskstore-2#-1000 --member=server1
Disk Store ID  : 643cb4b4-3cb0-40ec-b123-6945b23f165a
Disk Store Name: diskstore-2#-1000
Member ID  : 192.168.0.3(server1:16006):41001
Member Name: server1
Allow Force Compaction : No
Auto Compaction: Yes
Compaction Threshold   : 50
Max Oplog Size : 1024
Queue Size : 0
Time Interval  : 1000
Write Buffer Size  : 32768
Disk Usage Warning Percentage  : 90.0
Disk Usage Critical Percentage : 99.0
PDX Serialization Meta-Data Stored : No
  Disk Directory| Size
--- | --
/Users/jhuynh/apache-geode-1.12.0/bin/server1 | 2147483647
{code}


It also appears in code to only affect calculation of disk usage etc, but I 
didn't dig very deep.  If it is used there, the negative value will probably 
mess with that calculation.




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


[jira] [Created] (GEODE-8281) GFSH configure PDX overrides previously set values

2020-06-18 Thread Jason Huynh (Jira)
Jason Huynh created GEODE-8281:
--

 Summary: GFSH configure PDX overrides previously set values
 Key: GEODE-8281
 URL: https://issues.apache.org/jira/browse/GEODE-8281
 Project: Geode
  Issue Type: New Feature
  Components: gfsh
Reporter: Jason Huynh


When configuring pdx using gfsh, if I configure the pdx disk store and then the 
read-serialized on a different command, it overrides the persistent value to 
false.
{code:java}
gfsh>configure pdx --disk-store=new-diskstore
 read-serialized = false
 ignore-unread-fields = false
 persistent = true
 disk-store = new-diskstore
 Cluster configuration for group 'cluster' is updated.

gfsh>configure pdx --read-serialized=true
 read-serialized = true
 ignore-unread-fields = false
 persistent = false
 Cluster configuration for group 'cluster' is updated.{code}
 

The documentation for this feature also shows the same type of behavior (order 
of operations has been flipped)
gfsh>configure pdx --read-serialized=true
persistent = false
read-serialized = true
ignore-unread-fields = false
gfsh>configure pdx --disk-store=/home/username/server4/DEFAULT.drf
persistent = true
disk-store = /home/username/server4/DEFAULT.drf
read-serialized = false
ignore-unread-fields = false
Docs for Configure Pdx should probably also be updated when this is fixed and 
also not point to a drf file as the directory.

 

 

[~nnag] notes that it looks like it has to do with the following 
unspecifiedDefaultValue options
@CliOption(key = CliStrings.CONFIGURE_PDX__READ__SERIALIZED,
  unspecifiedDefaultValue = "false",
 

 



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


[jira] [Commented] (GEODE-8280) Return correct Redis AUTH errors

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

prettyClouds opened a new pull request #5276:
URL: https://github.com/apache/geode/pull/5276


   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


> Return correct Redis AUTH errors
> 
>
> Key: GEODE-8280
> URL: https://issues.apache.org/jira/browse/GEODE-8280
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Murtuza Boxwala
>Priority: Major
>
> Our errors were not matching those of the native redis



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


[jira] [Updated] (GEODE-8280) Return correct Auth Error message

2020-06-18 Thread Murtuza Boxwala (Jira)


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

Murtuza Boxwala updated GEODE-8280:
---
Component/s: redis

> Return correct Auth Error message
> -
>
> Key: GEODE-8280
> URL: https://issues.apache.org/jira/browse/GEODE-8280
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Murtuza Boxwala
>Priority: Major
>
> Our errors were not matching those of the native redis



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


[jira] [Created] (GEODE-8280) Return correct Auth Error message

2020-06-18 Thread Murtuza Boxwala (Jira)
Murtuza Boxwala created GEODE-8280:
--

 Summary: Return correct Auth Error message
 Key: GEODE-8280
 URL: https://issues.apache.org/jira/browse/GEODE-8280
 Project: Geode
  Issue Type: Improvement
Reporter: Murtuza Boxwala


Our errors were not matching those of the native redis



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


[jira] [Updated] (GEODE-8280) Return correct Redis Auth Error message

2020-06-18 Thread Murtuza Boxwala (Jira)


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

Murtuza Boxwala updated GEODE-8280:
---
Summary: Return correct Redis Auth Error message  (was: Return correct 
Reids Auth Error message)

> Return correct Redis Auth Error message
> ---
>
> Key: GEODE-8280
> URL: https://issues.apache.org/jira/browse/GEODE-8280
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Murtuza Boxwala
>Priority: Major
>
> Our errors were not matching those of the native redis



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


[jira] [Updated] (GEODE-8228) CI Failure: SerialWANStatsDUnitTest > testReplicatedSerialPropagationWithGroupTransactionEventsSendsBatchesWithCompleteTransactions

2020-06-18 Thread Eric Shu (Jira)


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

Eric Shu updated GEODE-8228:

Labels: caching-applications  (was: )

> CI Failure: SerialWANStatsDUnitTest > 
> testReplicatedSerialPropagationWithGroupTransactionEventsSendsBatchesWithCompleteTransactions
> ---
>
> Key: GEODE-8228
> URL: https://issues.apache.org/jira/browse/GEODE-8228
> Project: Geode
>  Issue Type: Test
>  Components: ci, wan
>Reporter: Ernest Burghardt
>Priority: Major
>  Labels: caching-applications
>
> [https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/247#A]
>  
>  
>  
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-= Test Results URI 
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>  
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0115/test-results/distributedTest/1591318846/
>  
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>  
>  
> Test report artifacts from this job are available at:
>  
>  
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0115/test-artifacts/1591318846/distributedtestfiles-OpenJDK8-1.14.0-build.0115.tgz



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


[jira] [Updated] (GEODE-8277) acceptance test certificates expired in Dockerized SNI acceptance tests

2020-06-18 Thread Bruce J Schuchardt (Jira)


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

Bruce J Schuchardt updated GEODE-8277:
--
Fix Version/s: 1.13.0

> acceptance test certificates expired in Dockerized SNI acceptance tests
> ---
>
> Key: GEODE-8277
> URL: https://issues.apache.org/jira/browse/GEODE-8277
> Project: Geode
>  Issue Type: Bug
>  Components: tests
>Reporter: Bill Burcham
>Assignee: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.13.0, 1.14.0
>
>
> At least locator-maeve-keystore.jks is expired. This is causing CI failures 
> now.
> All the certs: the CA cert, and each of the three server certs are expired. 
> These need to all be regenerated using {{CertificateBuilder}} and friends.
> I found neither instructions nor a script for regenerating these keystores 
> and truststores. They may be there but I didn't find 'em.
> TODO:
> # regenerate signing (CA) cert in truststore.jks
> # create the three new keystores containing certs signed by the signing cert
> # make sure all the expirations are at least 10 years hence
> # make sure there is a README or better: a README and a script for generating 
> all that
> # make sure all the SNI acceptance tests pass locally {{./gradlew 
> :geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}



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


[jira] [Closed] (GEODE-8277) acceptance test certificates expired in Dockerized SNI acceptance tests

2020-06-18 Thread Bruce J Schuchardt (Jira)


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

Bruce J Schuchardt closed GEODE-8277.
-

> acceptance test certificates expired in Dockerized SNI acceptance tests
> ---
>
> Key: GEODE-8277
> URL: https://issues.apache.org/jira/browse/GEODE-8277
> Project: Geode
>  Issue Type: Bug
>  Components: tests
>Reporter: Bill Burcham
>Assignee: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.13.0, 1.14.0
>
>
> Test-only issue.
> At least locator-maeve-keystore.jks is expired. This is causing CI failures 
> now.
> All the certs: the CA cert, and each of the three server certs are expired. 
> These need to all be regenerated using {{CertificateBuilder}} and friends.
> I found neither instructions nor a script for regenerating these keystores 
> and truststores. They may be there but I didn't find 'em.
> TODO:
> # regenerate signing (CA) cert in truststore.jks
> # create the three new keystores containing certs signed by the signing cert
> # make sure all the expirations are at least 10 years hence
> # make sure there is a README or better: a README and a script for generating 
> all that
> # make sure all the SNI acceptance tests pass locally {{./gradlew 
> :geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}



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


[jira] [Updated] (GEODE-8277) acceptance test certificates expired in Dockerized SNI acceptance tests

2020-06-18 Thread Bruce J Schuchardt (Jira)


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

Bruce J Schuchardt updated GEODE-8277:
--
Description: 
Test-only issue.

At least locator-maeve-keystore.jks is expired. This is causing CI failures now.

All the certs: the CA cert, and each of the three server certs are expired. 
These need to all be regenerated using {{CertificateBuilder}} and friends.

I found neither instructions nor a script for regenerating these keystores and 
truststores. They may be there but I didn't find 'em.

TODO:
# regenerate signing (CA) cert in truststore.jks
# create the three new keystores containing certs signed by the signing cert
# make sure all the expirations are at least 10 years hence
# make sure there is a README or better: a README and a script for generating 
all that
# make sure all the SNI acceptance tests pass locally {{./gradlew 
:geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}

  was:
At least locator-maeve-keystore.jks is expired. This is causing CI failures now.

All the certs: the CA cert, and each of the three server certs are expired. 
These need to all be regenerated using {{CertificateBuilder}} and friends.

I found neither instructions nor a script for regenerating these keystores and 
truststores. They may be there but I didn't find 'em.

TODO:
# regenerate signing (CA) cert in truststore.jks
# create the three new keystores containing certs signed by the signing cert
# make sure all the expirations are at least 10 years hence
# make sure there is a README or better: a README and a script for generating 
all that
# make sure all the SNI acceptance tests pass locally {{./gradlew 
:geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}


> acceptance test certificates expired in Dockerized SNI acceptance tests
> ---
>
> Key: GEODE-8277
> URL: https://issues.apache.org/jira/browse/GEODE-8277
> Project: Geode
>  Issue Type: Bug
>  Components: tests
>Reporter: Bill Burcham
>Assignee: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.13.0, 1.14.0
>
>
> Test-only issue.
> At least locator-maeve-keystore.jks is expired. This is causing CI failures 
> now.
> All the certs: the CA cert, and each of the three server certs are expired. 
> These need to all be regenerated using {{CertificateBuilder}} and friends.
> I found neither instructions nor a script for regenerating these keystores 
> and truststores. They may be there but I didn't find 'em.
> TODO:
> # regenerate signing (CA) cert in truststore.jks
> # create the three new keystores containing certs signed by the signing cert
> # make sure all the expirations are at least 10 years hence
> # make sure there is a README or better: a README and a script for generating 
> all that
> # make sure all the SNI acceptance tests pass locally {{./gradlew 
> :geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}



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


[jira] [Updated] (GEODE-8277) acceptance test certificates expired in Dockerized SNI acceptance tests

2020-06-18 Thread Bruce J Schuchardt (Jira)


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

Bruce J Schuchardt updated GEODE-8277:
--
Component/s: (was: membership)

> acceptance test certificates expired in Dockerized SNI acceptance tests
> ---
>
> Key: GEODE-8277
> URL: https://issues.apache.org/jira/browse/GEODE-8277
> Project: Geode
>  Issue Type: Bug
>  Components: tests
>Reporter: Bill Burcham
>Assignee: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.14.0
>
>
> At least locator-maeve-keystore.jks is expired. This is causing CI failures 
> now.
> All the certs: the CA cert, and each of the three server certs are expired. 
> These need to all be regenerated using {{CertificateBuilder}} and friends.
> I found neither instructions nor a script for regenerating these keystores 
> and truststores. They may be there but I didn't find 'em.
> TODO:
> # regenerate signing (CA) cert in truststore.jks
> # create the three new keystores containing certs signed by the signing cert
> # make sure all the expirations are at least 10 years hence
> # make sure there is a README or better: a README and a script for generating 
> all that
> # make sure all the SNI acceptance tests pass locally {{./gradlew 
> :geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}



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


[jira] [Commented] (GEODE-6489) CI Failures with testDistributedDeadlock

2020-06-18 Thread Xiaojian Zhou (Jira)


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

Xiaojian Zhou commented on GEODE-6489:
--

reproduced in 
https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/287#A

> CI Failures with testDistributedDeadlock
> 
>
> Key: GEODE-6489
> URL: https://issues.apache.org/jira/browse/GEODE-6489
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Affects Versions: 1.10.0
>Reporter: Lynn Hughes-Godfrey
>Assignee: Jinmei Liao
>Priority: Major
>  Labels: flaky
>
> In an single CI run, we see 3 failures all related to testDistributedDeadlock:
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShowDeadlockOverHttpDUnitTest
>  > testDistributedDeadlockWithFunction FAILED
> org.apache.geode.management.internal.cli.commands.ShowDeadlockOverHttpDUnitTest
>  > testNoDeadlock FAILED
> org.apache.geode.distributed.internal.deadlock.GemFireDeadlockDetectorDUnitTest
>  > testDistributedDeadlockWithDLock FAILED
> {noformat}
> https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/469
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShowDeadlockOverHttpDUnitTest
>  > testDistributedDeadlockWithFunction FAILED
> org.apache.geode.test.dunit.RMIException: While invoking 
> org.apache.geode.management.internal.cli.commands.ShowDeadlockDistributedTestBase$$Lambda$68/829260532.run
>  in VM 1 running on Host ceb4d948b5be with 4 VMs
> Caused by:
> org.awaitility.core.ConditionTimeoutException: Condition with 
> org.apache.geode.management.internal.cli.commands.ShowDeadlockDistributedTestBase
>  was not fulfilled within 300 seconds.
> org.apache.geode.management.internal.cli.commands.ShowDeadlockOverHttpDUnitTest
>  > testNoDeadlock FAILED
> org.apache.geode.test.dunit.RMIException: While invoking 
> org.apache.geode.management.internal.cli.commands.ShowDeadlockDistributedTestBase$$Lambda$68/829260532.run
>  in VM 1 running on Host ceb4d948b5be with 4 VMs
> Caused by:
> org.awaitility.core.ConditionTimeoutException: Condition with 
> org.apache.geode.management.internal.cli.commands.ShowDeadlockDistributedTestBase
>  was not fulfilled within 300 seconds.
> 137 tests completed, 2 failed
> > Task :geode-web:distributedTest FAILED
> > Task :geode-core:distributedTest
> org.apache.geode.distributed.internal.deadlock.GemFireDeadlockDetectorDUnitTest
>  > testDistributedDeadlockWithDLock FAILED
> java.lang.AssertionError
> at org.junit.Assert.fail(Assert.java:86)
> at org.junit.Assert.assertTrue(Assert.java:41)
> at org.junit.Assert.assertTrue(Assert.java:52)
> at 
> org.apache.geode.distributed.internal.deadlock.GemFireDeadlockDetectorDUnitTest.testDistributedDeadlockWithDLock(GemFireDeadlockDetectorDUnitTest.java:201)
> {noformat}
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=  Test Results URI 
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.10.0-SNAPSHOT.0019/test-results/distributedTest/1551833386/
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> Test report artifacts from this job are available at:
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.10.0-SNAPSHOT.0019/test-artifacts/1551833386/distributedtestfiles-OpenJDK8-1.10.0-SNAPSHOT.0019.tgz



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


[jira] [Assigned] (GEODE-6489) CI Failures with testDistributedDeadlock

2020-06-18 Thread Xiaojian Zhou (Jira)


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

Xiaojian Zhou reassigned GEODE-6489:


Assignee: Jinmei Liao

> CI Failures with testDistributedDeadlock
> 
>
> Key: GEODE-6489
> URL: https://issues.apache.org/jira/browse/GEODE-6489
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Affects Versions: 1.10.0
>Reporter: Lynn Hughes-Godfrey
>Assignee: Jinmei Liao
>Priority: Major
>  Labels: flaky
>
> In an single CI run, we see 3 failures all related to testDistributedDeadlock:
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShowDeadlockOverHttpDUnitTest
>  > testDistributedDeadlockWithFunction FAILED
> org.apache.geode.management.internal.cli.commands.ShowDeadlockOverHttpDUnitTest
>  > testNoDeadlock FAILED
> org.apache.geode.distributed.internal.deadlock.GemFireDeadlockDetectorDUnitTest
>  > testDistributedDeadlockWithDLock FAILED
> {noformat}
> https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/469
> {noformat}
> org.apache.geode.management.internal.cli.commands.ShowDeadlockOverHttpDUnitTest
>  > testDistributedDeadlockWithFunction FAILED
> org.apache.geode.test.dunit.RMIException: While invoking 
> org.apache.geode.management.internal.cli.commands.ShowDeadlockDistributedTestBase$$Lambda$68/829260532.run
>  in VM 1 running on Host ceb4d948b5be with 4 VMs
> Caused by:
> org.awaitility.core.ConditionTimeoutException: Condition with 
> org.apache.geode.management.internal.cli.commands.ShowDeadlockDistributedTestBase
>  was not fulfilled within 300 seconds.
> org.apache.geode.management.internal.cli.commands.ShowDeadlockOverHttpDUnitTest
>  > testNoDeadlock FAILED
> org.apache.geode.test.dunit.RMIException: While invoking 
> org.apache.geode.management.internal.cli.commands.ShowDeadlockDistributedTestBase$$Lambda$68/829260532.run
>  in VM 1 running on Host ceb4d948b5be with 4 VMs
> Caused by:
> org.awaitility.core.ConditionTimeoutException: Condition with 
> org.apache.geode.management.internal.cli.commands.ShowDeadlockDistributedTestBase
>  was not fulfilled within 300 seconds.
> 137 tests completed, 2 failed
> > Task :geode-web:distributedTest FAILED
> > Task :geode-core:distributedTest
> org.apache.geode.distributed.internal.deadlock.GemFireDeadlockDetectorDUnitTest
>  > testDistributedDeadlockWithDLock FAILED
> java.lang.AssertionError
> at org.junit.Assert.fail(Assert.java:86)
> at org.junit.Assert.assertTrue(Assert.java:41)
> at org.junit.Assert.assertTrue(Assert.java:52)
> at 
> org.apache.geode.distributed.internal.deadlock.GemFireDeadlockDetectorDUnitTest.testDistributedDeadlockWithDLock(GemFireDeadlockDetectorDUnitTest.java:201)
> {noformat}
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=  Test Results URI 
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.10.0-SNAPSHOT.0019/test-results/distributedTest/1551833386/
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> Test report artifacts from this job are available at:
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.10.0-SNAPSHOT.0019/test-artifacts/1551833386/distributedtestfiles-OpenJDK8-1.10.0-SNAPSHOT.0019.tgz



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


[jira] [Commented] (GEODE-8272) Refactor GFSH Restore Redundancy Command code to allow for REST API

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

jinmeiliao commented on a change in pull request #5249:
URL: https://github.com/apache/geode/pull/5249#discussion_r442502008



##
File path: 
geode-core/src/main/java/org/apache/geode/management/internal/functions/RestoreRedundancyFunction.java
##
@@ -0,0 +1,105 @@
+/*
+ * 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.management.internal.functions;
+
+import static 
org.apache.geode.management.runtime.RestoreRedundancyResults.Status.ERROR;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.apache.logging.log4j.Logger;
+
+import org.apache.geode.cache.control.RestoreRedundancyOperation;
+import org.apache.geode.cache.execute.FunctionContext;
+import 
org.apache.geode.internal.cache.control.SerializableRestoreRedundancyResultsImpl;
+import org.apache.geode.internal.cache.execute.InternalFunction;
+import org.apache.geode.logging.internal.log4j.api.LogService;
+import 
org.apache.geode.management.internal.operation.RestoreRedundancyResultsImpl;
+import org.apache.geode.management.operation.RestoreRedundancyRequest;
+
+
+public class RestoreRedundancyFunction implements InternalFunction {
+  private static final Logger logger = LogService.getLogger();
+
+  public static final String ID = RestoreRedundancyFunction.class.getName();
+
+
+  private static final long serialVersionUID = 1L;
+
+  @Override
+  // this would return the RestoreRedundancyResults if successful,
+  // it will return an exception to the caller if status is failure or any 
exception happens
+  public void execute(FunctionContext context) {
+Object[] arguments = context.getArguments();
+RestoreRedundancyRequest request = (RestoreRedundancyRequest) arguments[0];
+boolean isStatusCommand = (boolean) arguments[1];
+RestoreRedundancyOperation redundancyOperation =
+
context.getCache().getResourceManager().createRestoreRedundancyOperation();
+Set includeRegionsSet = null;
+if (request.getIncludeRegions() != null) {
+  includeRegionsSet = new HashSet<>(request.getIncludeRegions());
+}
+Set excludeRegionsSet = null;
+if (request.getExcludeRegions() != null) {
+  excludeRegionsSet = new HashSet<>(request.getExcludeRegions());
+}
+redundancyOperation.includeRegions(includeRegionsSet);
+redundancyOperation.excludeRegions(excludeRegionsSet);
+RestoreRedundancyResultsImpl results;
+
+try {
+  if (isStatusCommand) {
+results = (RestoreRedundancyResultsImpl) 
redundancyOperation.redundancyStatus();
+  } else {
+
redundancyOperation.shouldReassignPrimaries(request.getReassignPrimaries());
+results = (RestoreRedundancyResultsImpl) 
redundancyOperation.start().join();
+  }
+  if (results.getRegionOperationStatus().equals(ERROR)) {
+Exception e = new Exception(results.getRegionOperationMessage());
+throw e;
+  }
+  results.setSuccess(true);
+  results.setStatusMessage("Success"); // MLH change this
+} catch (Exception e) {
+  results =
+  new SerializableRestoreRedundancyResultsImpl();
+  results.setSuccess(false);
+  results.setStatusMessage(e.getMessage());
+}

Review comment:
   Generally `SerializableRestoreRedundancyResultsImpl` is used as the data 
object that's flowing from server to locator in order to support rolling 
upgrade. It would be nice that the result of the function call are all in that 
type.

##
File path: 
geode-core/src/main/java/org/apache/geode/management/internal/functions/RestoreRedundancyFunction.java
##
@@ -0,0 +1,105 @@
+/*
+ * 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

[jira] [Commented] (GEODE-8272) Refactor GFSH Restore Redundancy Command code to allow for REST API

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

jinmeiliao commented on pull request #5249:
URL: https://github.com/apache/geode/pull/5249#issuecomment-646304378


   > I have a question about the packages and modules of the classes. e.g. 
`RestoreRedundancyResultsImpl` is in package 
`org.apache.geode.management.internal.operation`. And it is in 
`geode-management` module. Its subclass 
`SerializableRestoreRedundancyResultsImpl` is in a different package 
`org.apache.geode.internal.cache.control` and a different module `geode-core`. 
Why these two classes are in different packages and different modules?
   > Also some classes have been moved to a different package. e.g. 
`RegionRedundancyStatus` and `RestoreRedundancyResults`. Is there a reason for 
that?
   
   RestoreRedundancyResults is an interface and is external api, 
RestoreRedundancyResultsImpl is a direct implementation of it. These two are in 
the geode-management module because cms needs them to convey result data back 
to the client. "SerializableRestoreRedundancyResultsImpl", however, is needed 
to convey function call results from locator to servers, it needs to support 
rolling upgrade, so it needs to implement "FixedDataSerializableID" interface, 
that's why we have to have it extends RestoreRedundancyResultsImpl and 
implement the additional interfaces in geode-core.



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


> Refactor GFSH Restore Redundancy Command code to allow for REST API
> ---
>
> Key: GEODE-8272
> URL: https://issues.apache.org/jira/browse/GEODE-8272
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Mark Hanson
>Assignee: Mark Hanson
>Priority: Major
>
> Refactor GFSH Restore Redundancy Command code to allow for REST API
>  
> The core code path is specific to GFSH right now and needs a few changes to 
> support the REST API command.



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


[jira] [Resolved] (GEODE-8279) ClientSNICQAcceptanceTest.classMethod failed

2020-06-18 Thread Bill Burcham (Jira)


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

Bill Burcham resolved GEODE-8279.
-
Resolution: Duplicate

dupe

> ClientSNICQAcceptanceTest.classMethod failed
> 
>
> Key: GEODE-8279
> URL: https://issues.apache.org/jira/browse/GEODE-8279
> Project: Geode
>  Issue Type: Bug
>  Components: client/server
>Reporter: Mark Hanson
>Priority: Major
>
> AcceptanceTestOpenJDK11 in CI and the PR pipeline is failing pretty 
> frequently.
> [https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/AcceptanceTestOpenJDK11/builds/275#A]
> {noformat}
> org.apache.geode.client.sni.ClientSNICQAcceptanceTest > classMethod FAILED
> 16:56:41com.palantir.docker.compose.execution.DockerExecutionException: 
> 'docker-compose exec -T geode gfsh run 
> --file=/geode/scripts/geode-starter.gfsh' returned exit code 1
> 16:56:41The output was:
> 16:56:411. Executing - start locator --name=locator-maeve --connect=false 
> --hostname-for-clients=locator-maeve 
> --properties-file=/geode/config/gemfire.properties 
> --security-properties-file= 
> --J=-Dgemfire.ssl-keystore=/geode/config/locator-maeve-keystore.jks
> 16:56:41
> 16:56:41
> ..The
>  Locator process terminated unexpectedly with exit status 1. Please refer to 
> the log file in /locator-maeve for full details.
> 16:56:41
> 16:56:41Exception in thread "main" 
> org.apache.geode.SystemConnectException: Problem starting up membership 
> services: Unable to form SSL connection.  Consult log file for more details
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.DistributionImpl.start(DistributionImpl.java:189)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.DistributionImpl.createDistribution(DistributionImpl.java:222)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:464)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:497)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:326)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:779)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.access$200(InternalDistributedSystem.java:135)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalDistributedSystem$Builder.build(InternalDistributedSystem.java:3034)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:290)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalLocator.startDistributedSystem(InternalLocator.java:743)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:388)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.LocatorLauncher.start(LocatorLauncher.java:716)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.LocatorLauncher.run(LocatorLauncher.java:623)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.LocatorLauncher.main(LocatorLauncher.java:217)
> 16:56:41
> 16:56:41
> 16:56:41
> 16:56:41* Execution Summary 
> ***
> 16:56:41Script file: /geode/scripts/geode-starter.gfsh
> 16:56:41
> 16:56:41Command-1 : start locator --name=locator-maeve --connect=false 
> --hostname-for-clients=locator-maeve 
> --properties-file=/geode/config/gemfire.properties 
> --security-properties-file=/geode/config/gfsecurity.properties 
> --J=-Dgemfire.ssl-keystore=/geode/config/locator-maeve-keystore.jks
> 16:56:41Status: FAILED
> 16:56:41at 
> com.palantir.docker.compose.execution.Command.lambda$throwingOnError$12(Command.java:60)
> 16:56:41at 
> com.palantir.docker.compose.execution.Command.execute(Command.java:50)
> 16:56:41at 
> com.palantir.docker.compose.execution.DefaultDockerCompose.exec(DefaultDockerCompose.java:122)
> 16:56:41at 
> com.palantir.docker.compose.execution.DelegatingDockerCompose.exec(DelegatingDockerCompose.java:86)
> 16:56:41at 
> com.palantir.docker.compose.execution.RetryingDockerCompose.exec(RetryingDockerCompose.java:22)
> 16:56:41at 
> com.palantir.docker.compose.DockerComposeRule.exec(DockerComposeRule.java:171)
> 16:56:41at 
> 

[jira] [Updated] (GEODE-8269) Improve test coverage

2020-06-18 Thread Sarah Abbey (Jira)


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

Sarah Abbey updated GEODE-8269:
---
Description: Analyzed test coverage via Intellij and by looking through all 
tests.  There were some test cases missing, we added some. Others will be added 
later. Jiras coming soon.  (was: Analyzed test coverage via Intellij and by 
looking through all tests.  There were some test cases missing.  We either 
added them or created additional stories in Tracker.)

> Improve test coverage
> -
>
> Key: GEODE-8269
> URL: https://issues.apache.org/jira/browse/GEODE-8269
> Project: Geode
>  Issue Type: Test
>  Components: redis, tests
>Reporter: Sarah Abbey
>Priority: Major
>
> Analyzed test coverage via Intellij and by looking through all tests.  There 
> were some test cases missing, we added some. Others will be added later. 
> Jiras coming soon.



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


[jira] [Commented] (GEODE-8269) Improve test coverage

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

sabbeyPivotal opened a new pull request #5275:
URL: https://github.com/apache/geode/pull/5275


   Adding some additional tests that were missing.



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


> Improve test coverage
> -
>
> Key: GEODE-8269
> URL: https://issues.apache.org/jira/browse/GEODE-8269
> Project: Geode
>  Issue Type: Test
>  Components: redis, tests
>Reporter: Sarah Abbey
>Priority: Major
>
> Analyzed test coverage via Intellij and by looking through all tests.  There 
> were some test cases missing, we added some. Others will be added later. 
> Jiras coming soon.



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


[jira] [Commented] (GEODE-8240) View has old locator version number after rolling upgrade

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

Bill commented on a change in pull request #5273:
URL: https://github.com/apache/geode/pull/5273#discussion_r442451532



##
File path: 
geode-serialization/src/main/java/org/apache/geode/internal/serialization/internal/DSFIDSerializerImpl.java
##
@@ -220,20 +220,6 @@ public void invokeToData(Object ds, DataOutput out) throws 
IOException {
 }
   }
 
-  /**
-   * Get the Version of the peer or disk store that created this {@link 
DataOutput}.
-   * Returns
-   * zero if the version is same as this member's.
-   */
-  public Version getVersionForDataStreamOrNull(DataOutput out) {
-// check if this is a versioned data output
-if (out instanceof VersionedDataStream) {
-  return ((VersionedDataStream) out).getVersion();
-} else {
-  return null;
-}
-  }

Review comment:
   dead 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


> View has old locator version number after rolling upgrade
> -
>
> Key: GEODE-8240
> URL: https://issues.apache.org/jira/browse/GEODE-8240
> Project: Geode
>  Issue Type: Bug
>  Components: client/server, membership
>Reporter: Ernest Burghardt
>Assignee: Bill Burcham
>Priority: Major
>
> as shown in [https://github.com/apache/geode/pull/5224]
>  
>  upgrade from version 1.12 doesn't seem to occur on the Locator 
>  
> testRollServersOnPartitionedRegion_dataserializable  failure results:
> Expecting:
>  <"Member Count : 3
>  Name | Id
>   | 
> ---
>  vm2 | 127.0.0.1(vm2:35019:locator):41000(version:GEODE 1.12.0) 
> [Coordinator]
>  vm0 | 10.0.0.111(vm0:35025):41001
>  vm1 | 10.0.0.111(vm1:35030):41002
>  ">
>  not to contain:
>  <"1.12.0">



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


[jira] [Commented] (GEODE-8240) View has old locator version number after rolling upgrade

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

Bill commented on a change in pull request #5273:
URL: https://github.com/apache/geode/pull/5273#discussion_r442452067



##
File path: 
geode-serialization/src/main/java/org/apache/geode/internal/serialization/Version.java
##
@@ -635,48 +569,4 @@ public boolean isPre65() {
 .collect(Collectors.toList());
   }
 
-  public boolean isCurrentVersion() {
-return this.ordinal == CURRENT.ordinal;
-  }

Review comment:
   this was used in exactly two places and is better accomplished via 
`Version.CURRENT.isEqual(someVersionOrdinal)`





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


> View has old locator version number after rolling upgrade
> -
>
> Key: GEODE-8240
> URL: https://issues.apache.org/jira/browse/GEODE-8240
> Project: Geode
>  Issue Type: Bug
>  Components: client/server, membership
>Reporter: Ernest Burghardt
>Assignee: Bill Burcham
>Priority: Major
>
> as shown in [https://github.com/apache/geode/pull/5224]
>  
>  upgrade from version 1.12 doesn't seem to occur on the Locator 
>  
> testRollServersOnPartitionedRegion_dataserializable  failure results:
> Expecting:
>  <"Member Count : 3
>  Name | Id
>   | 
> ---
>  vm2 | 127.0.0.1(vm2:35019:locator):41000(version:GEODE 1.12.0) 
> [Coordinator]
>  vm0 | 10.0.0.111(vm0:35025):41001
>  vm1 | 10.0.0.111(vm1:35030):41002
>  ">
>  not to contain:
>  <"1.12.0">



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


[jira] [Commented] (GEODE-8066) Geode should not be using both activation 1.1 and javax.activation 1.2

2020-06-18 Thread Owen Nichols (Jira)


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

Owen Nichols commented on GEODE-8066:
-

please do not close, it has NOT been fixed yet.  pulse is involved, which you 
have excluded above.

> Geode should not be using both activation 1.1 and javax.activation 1.2
> --
>
> Key: GEODE-8066
> URL: https://issues.apache.org/jira/browse/GEODE-8066
> Project: Geode
>  Issue Type: Improvement
>  Components: pulse
>Reporter: Owen Nichols
>Assignee: Robert Houghton
>Priority: Major
>
> javax.activation 1.2 is referenced by Geode as an indirect dependency of jaxb
> However, Spring 5.3 brings in some unwanted guests via 
> com.nimbusds:oauth2-oidc-sdk:7.1.1, including com.sun.mail:javax.mail:1.6.1 
> (we already use javax.mail:javax.mail-api:1.6.2) which in turn brings in 
> javax.activation:activation:1.1 (we already use 
> com.sun.activation:javax.activation:1.2.0)
> It would be nice to only have one version and one provider of mail and 
> activation in our project.



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


[jira] [Comment Edited] (GEODE-8066) Geode should not be using both activation 1.1 and javax.activation 1.2

2020-06-18 Thread Robert Houghton (Jira)


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

Robert Houghton edited comment on GEODE-8066 at 6/18/20, 7:15 PM:
--

I looked into this via {noformat}./gradlew geode-core:dependencies 
--configuration=runtimeClasspath{noformat} and {noformat}./gradlew 
geode-gfsh:dependencies --configuraiton=runtimeClasspath{noformat} and see only 
one version of {noformat}javax.mail-api{noformat} or 
{noformat}javax.activation{noformat} and 
{noformat}javax.activation-api{noformat}. I would like to close this issue.


was (Author: rhoughton):
I looked into this via `./gradlew geode-core:dependencies 
--configuration=runtimeClasspath` and `./gradlew geode-gfsh:dependencies 
--configuraiton=runtimeClasspath` and see only one version of `javax.mail-api` 
or `javax.activation` and `javax.activation-api`. I would like to close this 
issue.

> Geode should not be using both activation 1.1 and javax.activation 1.2
> --
>
> Key: GEODE-8066
> URL: https://issues.apache.org/jira/browse/GEODE-8066
> Project: Geode
>  Issue Type: Improvement
>  Components: pulse
>Reporter: Owen Nichols
>Assignee: Robert Houghton
>Priority: Major
>
> javax.activation 1.2 is referenced by Geode as an indirect dependency of jaxb
> However, Spring 5.3 brings in some unwanted guests via 
> com.nimbusds:oauth2-oidc-sdk:7.1.1, including com.sun.mail:javax.mail:1.6.1 
> (we already use javax.mail:javax.mail-api:1.6.2) which in turn brings in 
> javax.activation:activation:1.1 (we already use 
> com.sun.activation:javax.activation:1.2.0)
> It would be nice to only have one version and one provider of mail and 
> activation in our project.



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


[jira] [Commented] (GEODE-8066) Geode should not be using both activation 1.1 and javax.activation 1.2

2020-06-18 Thread Robert Houghton (Jira)


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

Robert Houghton commented on GEODE-8066:


I looked into this via `./gradlew geode-core:dependencies 
--configuration=runtimeClasspath` and `./gradlew geode-gfsh:dependencies 
--configuraiton=runtimeClasspath` and see only one version of `javax.mail-api` 
or `javax.activation` and `javax.activation-api`. I would like to close this 
issue.

> Geode should not be using both activation 1.1 and javax.activation 1.2
> --
>
> Key: GEODE-8066
> URL: https://issues.apache.org/jira/browse/GEODE-8066
> Project: Geode
>  Issue Type: Improvement
>  Components: pulse
>Reporter: Owen Nichols
>Assignee: Robert Houghton
>Priority: Major
>
> javax.activation 1.2 is referenced by Geode as an indirect dependency of jaxb
> However, Spring 5.3 brings in some unwanted guests via 
> com.nimbusds:oauth2-oidc-sdk:7.1.1, including com.sun.mail:javax.mail:1.6.1 
> (we already use javax.mail:javax.mail-api:1.6.2) which in turn brings in 
> javax.activation:activation:1.1 (we already use 
> com.sun.activation:javax.activation:1.2.0)
> It would be nice to only have one version and one provider of mail and 
> activation in our project.



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


[jira] [Commented] (GEODE-8216) SerialWANPersistenceEnabledGatewaySenderOffHeapDUnitTest.testReplicatedRegionPersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived FAILED

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

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


   



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


> SerialWANPersistenceEnabledGatewaySenderOffHeapDUnitTest.testReplicatedRegionPersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived
>  FAILED
> 
>
> Key: GEODE-8216
> URL: https://issues.apache.org/jira/browse/GEODE-8216
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Mark Hanson
>Assignee: Mario Ivanac
>Priority: Major
> Fix For: 1.14.0
>
> Attachments: geode-8216-logs.tgz
>
>
> Test failure 
> {noformat}
> org.apache.geode.internal.cache.wan.offheap.SerialWANPersistenceEnabledGatewaySenderOffHeapDUnitTest
>  > 
> testReplicatedRegionPersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived
>  FAILED
> 11:25:56org.apache.geode.test.dunit.RMIException: While invoking 
> org.apache.geode.internal.cache.wan.serial.SerialWANPersistenceEnabledGatewaySenderDUnitTest$$Lambda$182/1489068907.run
>  in VM 2 running on Host 40c25330a7e0 with 8 VMs
> 11:25:56
> 11:25:56Caused by:
> 11:25:56org.awaitility.core.ConditionTimeoutException: Assertion 
> condition defined as a lambda expression in 
> org.apache.geode.internal.cache.wan.WANTestBase that uses int, 
> intorg.apache.geode.cache.Region Expected region entries: 0 but actual 
> entries: 10 present region keyset [6, 5, 7, 0, 8, 9, 2, 1, 3, 4] expected:<0> 
> but was:<10> within 5 minutes.
> 11:25:56
> 11:25:56Caused by:
> 11:25:56java.lang.AssertionError: Expected region entries: 0 but 
> actual entries: 10 present region keyset [6, 5, 7, 0, 8, 9, 2, 1, 3, 4] 
> expected:<0> but was:<10>
> 11:33:48 {noformat}
>  
>  
> [https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/229]
> {noformat}
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=  Test Results URI 
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0098/test-results/distributedTest/1591126795/
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> Test report artifacts from this job are available at:
> http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0098/test-artifacts/1591126795/distributedtestfiles-OpenJDK8-1.14.0-build.0098.tgz
>  {noformat}



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


[jira] [Commented] (GEODE-8279) ClientSNICQAcceptanceTest.classMethod failed

2020-06-18 Thread Mark Hanson (Jira)


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

Mark Hanson commented on GEODE-8279:


{noformat}
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=  Test Results URI 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0153/test-results/acceptanceTest/1592506670/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Test report artifacts from this job are available at:

http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0153/test-artifacts/1592506670/acceptancetestfiles-OpenJDK11-1.14.0-build.0153.tgz
 {noformat}

> ClientSNICQAcceptanceTest.classMethod failed
> 
>
> Key: GEODE-8279
> URL: https://issues.apache.org/jira/browse/GEODE-8279
> Project: Geode
>  Issue Type: Bug
>  Components: client/server
>Reporter: Mark Hanson
>Priority: Major
>
> AcceptanceTestOpenJDK11 in CI and the PR pipeline is failing pretty 
> frequently.
> [https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/AcceptanceTestOpenJDK11/builds/275#A]
> {noformat}
> org.apache.geode.client.sni.ClientSNICQAcceptanceTest > classMethod FAILED
> 16:56:41com.palantir.docker.compose.execution.DockerExecutionException: 
> 'docker-compose exec -T geode gfsh run 
> --file=/geode/scripts/geode-starter.gfsh' returned exit code 1
> 16:56:41The output was:
> 16:56:411. Executing - start locator --name=locator-maeve --connect=false 
> --hostname-for-clients=locator-maeve 
> --properties-file=/geode/config/gemfire.properties 
> --security-properties-file= 
> --J=-Dgemfire.ssl-keystore=/geode/config/locator-maeve-keystore.jks
> 16:56:41
> 16:56:41
> ..The
>  Locator process terminated unexpectedly with exit status 1. Please refer to 
> the log file in /locator-maeve for full details.
> 16:56:41
> 16:56:41Exception in thread "main" 
> org.apache.geode.SystemConnectException: Problem starting up membership 
> services: Unable to form SSL connection.  Consult log file for more details
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.DistributionImpl.start(DistributionImpl.java:189)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.DistributionImpl.createDistribution(DistributionImpl.java:222)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:464)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:497)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:326)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:779)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.access$200(InternalDistributedSystem.java:135)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalDistributedSystem$Builder.build(InternalDistributedSystem.java:3034)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:290)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalLocator.startDistributedSystem(InternalLocator.java:743)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:388)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.LocatorLauncher.start(LocatorLauncher.java:716)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.LocatorLauncher.run(LocatorLauncher.java:623)
> 16:56:41
> 16:56:41  at 
> org.apache.geode.distributed.LocatorLauncher.main(LocatorLauncher.java:217)
> 16:56:41
> 16:56:41
> 16:56:41
> 16:56:41* Execution Summary 
> ***
> 16:56:41Script file: /geode/scripts/geode-starter.gfsh
> 16:56:41
> 16:56:41Command-1 : start locator --name=locator-maeve --connect=false 
> --hostname-for-clients=locator-maeve 
> --properties-file=/geode/config/gemfire.properties 
> --security-properties-file=/geode/config/gfsecurity.properties 
> --J=-Dgemfire.ssl-keystore=/geode/config/locator-maeve-keystore.jks
> 16:56:41Status: FAILED
> 16:56:41at 
> com.palantir.docker.compose.execution.Command.lambda$throwingOnError$12(Command.java:60)
> 16:56:41at 
> com.palantir.docker.compose.execution.Command.execute(Command.java:50)
> 16:56:41at 
> 

[jira] [Updated] (GEODE-8279) ClientSNICQAcceptanceTest.classMethod failed

2020-06-18 Thread Mark Hanson (Jira)


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

Mark Hanson updated GEODE-8279:
---
Description: 
AcceptanceTestOpenJDK11 in CI and the PR pipeline is failing pretty frequently.

[https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/AcceptanceTestOpenJDK11/builds/275#A]
{noformat}
org.apache.geode.client.sni.ClientSNICQAcceptanceTest > classMethod FAILED
16:56:41com.palantir.docker.compose.execution.DockerExecutionException: 
'docker-compose exec -T geode gfsh run 
--file=/geode/scripts/geode-starter.gfsh' returned exit code 1
16:56:41The output was:
16:56:411. Executing - start locator --name=locator-maeve --connect=false 
--hostname-for-clients=locator-maeve 
--properties-file=/geode/config/gemfire.properties 
--security-properties-file= 
--J=-Dgemfire.ssl-keystore=/geode/config/locator-maeve-keystore.jks
16:56:41
16:56:41
..The
 Locator process terminated unexpectedly with exit status 1. Please refer to 
the log file in /locator-maeve for full details.
16:56:41
16:56:41Exception in thread "main" org.apache.geode.SystemConnectException: 
Problem starting up membership services: Unable to form SSL connection.  
Consult log file for more details
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.DistributionImpl.start(DistributionImpl.java:189)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.DistributionImpl.createDistribution(DistributionImpl.java:222)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:464)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:497)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:326)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:779)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.InternalDistributedSystem.access$200(InternalDistributedSystem.java:135)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.InternalDistributedSystem$Builder.build(InternalDistributedSystem.java:3034)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:290)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.InternalLocator.startDistributedSystem(InternalLocator.java:743)
16:56:41
16:56:41at 
org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:388)
16:56:41
16:56:41at 
org.apache.geode.distributed.LocatorLauncher.start(LocatorLauncher.java:716)
16:56:41
16:56:41at 
org.apache.geode.distributed.LocatorLauncher.run(LocatorLauncher.java:623)
16:56:41
16:56:41at 
org.apache.geode.distributed.LocatorLauncher.main(LocatorLauncher.java:217)
16:56:41
16:56:41
16:56:41
16:56:41* Execution Summary ***
16:56:41Script file: /geode/scripts/geode-starter.gfsh
16:56:41
16:56:41Command-1 : start locator --name=locator-maeve --connect=false 
--hostname-for-clients=locator-maeve 
--properties-file=/geode/config/gemfire.properties 
--security-properties-file=/geode/config/gfsecurity.properties 
--J=-Dgemfire.ssl-keystore=/geode/config/locator-maeve-keystore.jks
16:56:41Status: FAILED
16:56:41at 
com.palantir.docker.compose.execution.Command.lambda$throwingOnError$12(Command.java:60)
16:56:41at 
com.palantir.docker.compose.execution.Command.execute(Command.java:50)
16:56:41at 
com.palantir.docker.compose.execution.DefaultDockerCompose.exec(DefaultDockerCompose.java:122)
16:56:41at 
com.palantir.docker.compose.execution.DelegatingDockerCompose.exec(DelegatingDockerCompose.java:86)
16:56:41at 
com.palantir.docker.compose.execution.RetryingDockerCompose.exec(RetryingDockerCompose.java:22)
16:56:41at 
com.palantir.docker.compose.DockerComposeRule.exec(DockerComposeRule.java:171)
16:56:41at 
org.apache.geode.client.sni.ClientSNICQAcceptanceTest.beforeClass(ClientSNICQAcceptanceTest.java:113)
16:56:41
16:56:41org.apache.geode.client.sni.ClientSNICQAcceptanceTest > classMethod 
FAILED
16:56:41com.palantir.docker.compose.execution.DockerExecutionException: 
'docker-compose exec -T geode cat server-dolores/server-dolores.log' returned 
exit code 1
16:56:41The output was:
16:56:41cat: server-dolores/server-dolores.log: No such file or directory
16:56:41at 
com.palantir.docker.compose.execution.Command.lambda$throwingOnError$12(Command.java:60)
16:56:41at 

[jira] [Created] (GEODE-8279) ClientSNICQAcceptanceTest.classMethod failed

2020-06-18 Thread Mark Hanson (Jira)
Mark Hanson created GEODE-8279:
--

 Summary: ClientSNICQAcceptanceTest.classMethod failed
 Key: GEODE-8279
 URL: https://issues.apache.org/jira/browse/GEODE-8279
 Project: Geode
  Issue Type: Bug
  Components: client/server
Reporter: Mark Hanson


{noformat}
org.apache.geode.client.sni.ClientSNICQAcceptanceTest > classMethod FAILED
16:04:19
com.palantir.docker.compose.execution.DockerExecutionException: 
'docker-compose exec -T geode gfsh run 
--file=/geode/scripts/geode-starter.gfsh' returned exit code 1
16:04:19
The output was:
16:04:19
1. Executing - start locator --name=locator-maeve --connect=false 
--hostname-for-clients=locator-maeve 
--properties-file=/geode/config/gemfire.properties 
--security-properties-file= 
--J=-Dgemfire.ssl-keystore=/geode/config/locator-maeve-keystore.jks
16:04:1916:04:19

.The
 Locator process terminated unexpectedly with exit status 1. Please refer to 
the log file in /locator-maeve for full details.
16:04:1916:04:19
Exception in thread "main" org.apache.geode.SystemConnectException: Problem 
starting up membership services: Unable to form SSL connection.  Consult log 
file for more details
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.DistributionImpl.start(DistributionImpl.java:189)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.DistributionImpl.createDistribution(DistributionImpl.java:222)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:464)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:497)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:326)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:779)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.InternalDistributedSystem.access$200(InternalDistributedSystem.java:135)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.InternalDistributedSystem$Builder.build(InternalDistributedSystem.java:3034)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:290)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.InternalLocator.startDistributedSystem(InternalLocator.java:743)
16:04:1916:04:19
at 
org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:388)
16:04:1916:04:19
at 
org.apache.geode.distributed.LocatorLauncher.start(LocatorLauncher.java:716)
16:04:1916:04:19
at 
org.apache.geode.distributed.LocatorLauncher.run(LocatorLauncher.java:623)
16:04:1916:04:19
at 
org.apache.geode.distributed.LocatorLauncher.main(LocatorLauncher.java:217)
16:04:1916:04:19 {noformat}



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


[jira] [Assigned] (GEODE-8066) Geode should not be using both activation 1.1 and javax.activation 1.2

2020-06-18 Thread Robert Houghton (Jira)


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

Robert Houghton reassigned GEODE-8066:
--

Assignee: Robert Houghton

> Geode should not be using both activation 1.1 and javax.activation 1.2
> --
>
> Key: GEODE-8066
> URL: https://issues.apache.org/jira/browse/GEODE-8066
> Project: Geode
>  Issue Type: Improvement
>  Components: pulse
>Reporter: Owen Nichols
>Assignee: Robert Houghton
>Priority: Major
>
> javax.activation 1.2 is referenced by Geode as an indirect dependency of jaxb
> However, Spring 5.3 brings in some unwanted guests via 
> com.nimbusds:oauth2-oidc-sdk:7.1.1, including com.sun.mail:javax.mail:1.6.1 
> (we already use javax.mail:javax.mail-api:1.6.2) which in turn brings in 
> javax.activation:activation:1.1 (we already use 
> com.sun.activation:javax.activation:1.2.0)
> It would be nice to only have one version and one provider of mail and 
> activation in our project.



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


[jira] [Commented] (GEODE-8272) Refactor GFSH Restore Redundancy Command code to allow for REST API

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

jinmeiliao commented on a change in pull request #5249:
URL: https://github.com/apache/geode/pull/5249#discussion_r442418701



##
File path: 
geode-management/src/main/java/org/apache/geode/management/operation/RestoreRedundancyRequest.java
##
@@ -0,0 +1,123 @@
+/*
+ * 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.management.operation;
+
+import java.util.List;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
+
+import org.apache.geode.annotations.Experimental;
+import org.apache.geode.management.api.ClusterManagementOperation;
+import org.apache.geode.management.runtime.RestoreRedundancyResults;
+
+/**
+ * Defines a distributed system request to optimize bucket allocation across 
members.
+ */
+@Experimental
+public class RestoreRedundancyRequest
+implements ClusterManagementOperation {
+
+  /**
+   * see {@link #getEndpoint()}
+   */
+  public static final String RESTORE_REDUNDANCY_REBALANCE_ENDPOINT =
+  "/operations/restoreRedundancy";
+  // null means all regions included
+  private List includeRegions;
+  // null means don't exclude any regions
+  private List excludeRegions;
+  private boolean reassignPrimaries = true;
+  private String operator;
+
+  /**
+   * by default, requests all partitioned regions to be rebalanced
+   */
+  public RestoreRedundancyRequest() {}
+
+  /**
+   * copy constructor
+   */
+  public RestoreRedundancyRequest(
+  RestoreRedundancyRequest other) {
+this.setExcludeRegions(other.getExcludeRegions());
+this.setIncludeRegions(other.getIncludeRegions());
+this.setReassignPrimaries(other.getReassignPrimaries());
+this.operator = other.getOperator();
+  }
+
+  /***
+   * Returns the list of regions to be rebalanced (or an empty list for 
all-except-excluded)
+   */
+  public List getIncludeRegions() {
+return includeRegions;
+  }
+
+  /**
+   * requests rebalance of the specified region(s) only. When at least one 
region is specified, this
+   * takes precedence over any excluded regions.
+   */
+  public void setIncludeRegions(List includeRegions) {
+this.includeRegions = includeRegions;
+  }
+
+  /***
+   * Returns the list of regions NOT to be rebalanced (iff {@link 
#getIncludeRegions()} is empty)
+   */
+  public List getExcludeRegions() {
+return excludeRegions;
+  }
+
+  /**
+   * excludes specific regions from the rebalance, if {@link 
#getIncludeRegions()} is empty,
+   * otherwise has no effect
+   * default: no regions are excluded
+   */
+  public void setExcludeRegions(List excludeRegions) {
+this.excludeRegions = excludeRegions;
+  }
+
+  public void setReassignPrimaries(boolean reassignPrimaries) {
+this.reassignPrimaries = reassignPrimaries;
+  }
+
+  public boolean getReassignPrimaries() {
+return reassignPrimaries;
+  }
+
+  @Override
+  @JsonIgnore
+  public String getEndpoint() {
+return RESTORE_REDUNDANCY_REBALANCE_ENDPOINT;
+  }
+
+  @Override
+  public String getOperator() {
+return operator;
+  }
+
+  public void setOperator(String operator) {

Review comment:
   I believe you will need to set the operator in the controller, just like 
what the rebalance did





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


> Refactor GFSH Restore Redundancy Command code to allow for REST API
> ---
>
> Key: GEODE-8272
> URL: https://issues.apache.org/jira/browse/GEODE-8272
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh
>Reporter: Mark Hanson
>Assignee: Mark Hanson
>Priority: Major
>
> Refactor GFSH Restore Redundancy Command code to allow for 

[jira] [Commented] (GEODE-8241) Locator does not observe locator-wait-time

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

aaronlindsey commented on pull request #5236:
URL: https://github.com/apache/geode/pull/5236#issuecomment-646223094


   I rebased on develop to pick up the fix for the failing 
`AcceptanceTestOpenJDK11` check.



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


> Locator does not observe locator-wait-time
> --
>
> Key: GEODE-8241
> URL: https://issues.apache.org/jira/browse/GEODE-8241
> Project: Geode
>  Issue Type: Bug
>Reporter: Aaron Lindsey
>Assignee: Aaron Lindsey
>Priority: Major
>
> In the case where a locator starts up and is unable to connect to any other 
> locators, it may decide to become the membership coordinator even if 
> locator-wait-time has not elapsed.
> The following conditional from GMSJoinLeave.java causes the issue. There 
> should be an additional check for locator-wait-time before becoming 
> coordinator.
> {code:java}
> if (state.joinedMembersContacted <= 0 &&
> (tries >= minimumRetriesBeforeBecomingCoordinator ||
> state.locatorsContacted >= locators.size())) {
>   synchronized (viewInstallationLock) {
> becomeCoordinator();
>   }
>   return true;
> }
> {code}



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


[jira] [Commented] (GEODE-8241) Locator does not observe locator-wait-time

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

aaronlindsey commented on pull request #5236:
URL: https://github.com/apache/geode/pull/5236#issuecomment-646219134


   The failing `AcceptanceTestOpenJDK11` check is also failing on develop.



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


> Locator does not observe locator-wait-time
> --
>
> Key: GEODE-8241
> URL: https://issues.apache.org/jira/browse/GEODE-8241
> Project: Geode
>  Issue Type: Bug
>Reporter: Aaron Lindsey
>Assignee: Aaron Lindsey
>Priority: Major
>
> In the case where a locator starts up and is unable to connect to any other 
> locators, it may decide to become the membership coordinator even if 
> locator-wait-time has not elapsed.
> The following conditional from GMSJoinLeave.java causes the issue. There 
> should be an additional check for locator-wait-time before becoming 
> coordinator.
> {code:java}
> if (state.joinedMembersContacted <= 0 &&
> (tries >= minimumRetriesBeforeBecomingCoordinator ||
> state.locatorsContacted >= locators.size())) {
>   synchronized (viewInstallationLock) {
> becomeCoordinator();
>   }
>   return true;
> }
> {code}



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


[jira] [Commented] (GEODE-8251) exception creating domain.Configuration stops locator startup after rolling upgrade

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

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



##
File path: 
geode-management/src/main/java/org/apache/geode/management/configuration/AbstractConfiguration.java
##
@@ -47,7 +47,7 @@
 @Experimental
 public abstract class AbstractConfiguration
 implements Identifiable, JsonSerializable {
-
+  private static final long serialVersionUID = -6612840641128145954L;

Review comment:
   Optional: all JDK classes put serialVersionUID at the bottom of the 
class. I usually do this to try and be consistent but obviously doesn't matter 
much.

##
File path: 
geode-core/src/upgradeTest/java/org/apache/geode/internal/cache/rollingupgrade/RollingUpgradeWithGfshDUnitTest.java
##
@@ -0,0 +1,160 @@
+/*
+ * 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.rollingupgrade;
+
+/*
+ * 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.
+ */
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.List;
+
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.rules.TemporaryFolder;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+
+import org.apache.geode.internal.UniquePortSupplier;
+import org.apache.geode.test.compiler.ClassBuilder;
+import org.apache.geode.test.junit.categories.BackwardCompatibilityTest;
+import org.apache.geode.test.junit.rules.gfsh.GfshExecution;
+import org.apache.geode.test.junit.rules.gfsh.GfshRule;
+import org.apache.geode.test.junit.rules.gfsh.GfshScript;
+import 
org.apache.geode.test.junit.runners.CategoryWithParameterizedRunnerFactory;
+import org.apache.geode.test.version.TestVersion;
+import org.apache.geode.test.version.VersionManager;
+
+/**
+ * This test iterates through the versions of Geode and executes client 
compatibility with
+ * the current version of Geode.
+ */
+@Category({BackwardCompatibilityTest.class})
+@RunWith(Parameterized.class)
+@Parameterized.UseParametersRunnerFactory(CategoryWithParameterizedRunnerFactory.class)
+public class RollingUpgradeWithGfshDUnitTest {
+  private final UniquePortSupplier portSupplier = new UniquePortSupplier();
+  private final String oldVersion;
+
+  @Parameterized.Parameters(name = "{0}")
+  public static Collection data() {
+List result = 
VersionManager.getInstance().getVersionsWithoutCurrent();
+result.removeIf(s -> TestVersion.compare(s, "1.10.0") < 0);
+return result;
+  }
+
+  @Rule
+  public GfshRule oldGfsh;
+
+  @Rule
+  public GfshRule currentGfsh = new GfshRule();
+
+  @Rule
+  public TemporaryFolder tempFolder = new TemporaryFolder();
+
+  public RollingUpgradeWithGfshDUnitTest(String version) {
+oldVersion = version;
+oldGfsh = new GfshRule(oldVersion);
+  }
+
+  @Test
+  public void testRollingUpgradeWithDeployment() throws Exception {
+int locatorPort = portSupplier.getAvailablePort();
+int locatorJmxPort = portSupplier.getAvailablePort();
+int locator2Port = portSupplier.getAvailablePort();
+int locator2JmxPort = 

[jira] [Resolved] (GEODE-8277) acceptance test certificates expired in Dockerized SNI acceptance tests

2020-06-18 Thread Bruce J Schuchardt (Jira)


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

Bruce J Schuchardt resolved GEODE-8277.
---
Fix Version/s: 1.14.0
   Resolution: Fixed

> acceptance test certificates expired in Dockerized SNI acceptance tests
> ---
>
> Key: GEODE-8277
> URL: https://issues.apache.org/jira/browse/GEODE-8277
> Project: Geode
>  Issue Type: Bug
>  Components: membership, tests
>Reporter: Bill Burcham
>Assignee: Bruce J Schuchardt
>Priority: Major
> Fix For: 1.14.0
>
>
> At least locator-maeve-keystore.jks is expired. This is causing CI failures 
> now.
> All the certs: the CA cert, and each of the three server certs are expired. 
> These need to all be regenerated using {{CertificateBuilder}} and friends.
> I found neither instructions nor a script for regenerating these keystores 
> and truststores. They may be there but I didn't find 'em.
> TODO:
> # regenerate signing (CA) cert in truststore.jks
> # create the three new keystores containing certs signed by the signing cert
> # make sure all the expirations are at least 10 years hence
> # make sure there is a README or better: a README and a script for generating 
> all that
> # make sure all the SNI acceptance tests pass locally {{./gradlew 
> :geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}



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


[jira] [Commented] (GEODE-8276) KEYS command returns corrupted keys in some cases

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

jdeppe-pivotal merged pull request #5272:
URL: https://github.com/apache/geode/pull/5272


   



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


> KEYS command returns corrupted keys in some cases
> -
>
> Key: GEODE-8276
> URL: https://issues.apache.org/jira/browse/GEODE-8276
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Darrel Schneider
>Assignee: Darrel Schneider
>Priority: Major
>
> In some cases the keys returned by the KEYS command will be corrupted. If the 
> key that is stored contains bytes that when UTF-8 encoded produce multiple 
> bytes then that key will be corrupted when returned from the KEYS command.
>  



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


[jira] [Commented] (GEODE-8277) acceptance test certificates expired in Dockerized SNI acceptance tests

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

bschuchardt merged pull request #5274:
URL: https://github.com/apache/geode/pull/5274


   



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


> acceptance test certificates expired in Dockerized SNI acceptance tests
> ---
>
> Key: GEODE-8277
> URL: https://issues.apache.org/jira/browse/GEODE-8277
> Project: Geode
>  Issue Type: Bug
>  Components: membership, tests
>Reporter: Bill Burcham
>Assignee: Bruce J Schuchardt
>Priority: Major
>
> At least locator-maeve-keystore.jks is expired. This is causing CI failures 
> now.
> All the certs: the CA cert, and each of the three server certs are expired. 
> These need to all be regenerated using {{CertificateBuilder}} and friends.
> I found neither instructions nor a script for regenerating these keystores 
> and truststores. They may be there but I didn't find 'em.
> TODO:
> # regenerate signing (CA) cert in truststore.jks
> # create the three new keystores containing certs signed by the signing cert
> # make sure all the expirations are at least 10 years hence
> # make sure there is a README or better: a README and a script for generating 
> all that
> # make sure all the SNI acceptance tests pass locally {{./gradlew 
> :geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}



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


[jira] [Commented] (GEODE-8237) Add note about 'alter region' and cluster conf service in doc

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

jinmeiliao merged pull request #5231:
URL: https://github.com/apache/geode/pull/5231


   



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 note about 'alter region' and cluster conf service in doc
> -
>
> Key: GEODE-8237
> URL: https://issues.apache.org/jira/browse/GEODE-8237
> Project: Geode
>  Issue Type: Improvement
>  Components: docs
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
>
> When cluster configuration service is activated and "alter region" command is 
> applied on a region that was created via cache.xml, the command fails.
> This behavior is ok but it is not documented.



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


[jira] [Commented] (GEODE-8250) Improve documentation for logging

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

jinmeiliao commented on a change in pull request #5268:
URL: https://github.com/apache/geode/pull/5268#discussion_r442387862



##
File path: 
geode-assembly/src/acceptanceTest/java/org/apache/geode/logging/LocatorWithCustomLogConfigAcceptanceTest.java
##
@@ -0,0 +1,291 @@
+/*
+ * 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.logging;
+
+import static java.nio.file.Files.copy;
+import static 
org.apache.geode.internal.AvailablePortHelper.getRandomAvailableTCPPorts;
+import static org.apache.geode.test.assertj.LogFileAssert.assertThat;
+import static org.apache.geode.test.awaitility.GeodeAwaitility.await;
+import static org.apache.geode.test.util.ResourceUtils.createFileFromResource;
+import static org.apache.geode.test.util.ResourceUtils.getResource;
+
+import java.nio.file.Path;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.TemporaryFolder;
+import org.junit.rules.TestName;
+
+import org.apache.geode.test.junit.rules.RequiresGeodeHome;
+import org.apache.geode.test.junit.rules.gfsh.GfshRule;
+
+public class LocatorWithCustomLogConfigAcceptanceTest {
+
+  private static final String CONFIG_WITH_GEODE_PLUGINS_FILE_NAME =
+  "LocatorWithCustomLogConfigAcceptanceTestWithGeodePlugins.xml";
+  private static final String CONFIG_WITHOUT_GEODE_PLUGINS_FILE_NAME =
+  "LocatorWithCustomLogConfigAcceptanceTestWithoutGeodePlugins.xml";
+
+  private String locatorName;
+  private Path workingDir;
+  private int locatorPort;
+  private int httpPort;
+  private int rmiPort;
+  private Path configWithGeodePluginsFile;
+  private Path configWithoutGeodePluginsFile;
+  private Path locatorLogFile;
+  private Path pulseLogFile;
+  private Path customLogFile;
+
+  @Rule
+  public GfshRule gfshRule = new GfshRule();
+  @Rule
+  public RequiresGeodeHome requiresGeodeHome = new RequiresGeodeHome();
+  @Rule
+  public TemporaryFolder temporaryFolder = new TemporaryFolder();
+  @Rule
+  public TestName testName = new TestName();
+
+  @Before
+  public void setUpLogConfigFiles() {
+configWithGeodePluginsFile = createFileFromResource(
+getResource(CONFIG_WITH_GEODE_PLUGINS_FILE_NAME), 
temporaryFolder.getRoot(),
+CONFIG_WITH_GEODE_PLUGINS_FILE_NAME)
+.toPath();
+
+configWithoutGeodePluginsFile = createFileFromResource(
+getResource(CONFIG_WITHOUT_GEODE_PLUGINS_FILE_NAME), 
temporaryFolder.getRoot(),
+CONFIG_WITHOUT_GEODE_PLUGINS_FILE_NAME)
+.toPath();
+  }
+
+  @Before
+  public void setUpOutputFiles() {
+locatorName = testName.getMethodName();
+
+workingDir = temporaryFolder.getRoot().toPath().toAbsolutePath();
+locatorLogFile = workingDir.resolve(locatorName + ".log");
+pulseLogFile = workingDir.resolve("pulse.log");
+customLogFile = workingDir.resolve("custom.log");
+  }
+
+  @Before
+  public void setUpRandomPorts() {
+int[] ports = getRandomAvailableTCPPorts(3);
+
+locatorPort = ports[0];
+httpPort = ports[1];
+rmiPort = ports[2];
+  }
+
+  @After
+  public void stopLocator() {
+gfshRule.execute("stop locator --dir=" + workingDir);

Review comment:
   GfshRule itself will try to stop all the processes it starts using the 
rule if you allow it to host the working dir of all the servers/locators it 
started. Using the gfshRule.getWorkingDir will get the temp folder that gfsh 
uses and all the servers/locators' working dir will be under there. That way, 
when tests finish, GfshRule will kill all the members automatically.

##
File path: 
geode-assembly/src/acceptanceTest/java/org/apache/geode/logging/LocatorWithCustomLogConfigAcceptanceTest.java
##
@@ -0,0 +1,291 @@
+/*
+ * 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 

[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

pdxcodemonkey commented on pull request #619:
URL: https://github.com/apache/geode-native/pull/619#issuecomment-646187772


   Sure, I'll have a look



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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed Time (serializePdx): 1.53206 milliseconds​
> {noformat}
> While these are the times using the old "<" operator:
> {noformat}
> Elapsed Time (serializePdx): 56.1524 milliseconds
> Elapsed Time (serializePdx): 0.012327 milliseconds
> Elapsed Time (serializePdx): 0.006325 milliseconds
> Elapsed Time (serializePdx): 0.005419 milliseconds
> Elapsed Time (serializePdx): 0.005266 milliseconds
> Elapsed Time (serializePdx): 0.005662 milliseconds
> Elapsed Time (serializePdx): 0.005407 milliseconds
> Elapsed Time (serializePdx): 0.005286 milliseconds
> Elapsed Time (serializePdx): 0.005467 milliseconds
> Elapsed Time (serializePdx): 0.005276 milliseconds
> Elapsed Time (serializePdx): 0.005298 milliseconds
> {noformat}
> And after creating 50.000 instances, these are the times for the last 10 
> calls with the current "<" operator and with the old one respectively::
> {noformat}
> Elapsed Time (serializePdx): 8.11767 milliseconds​
> Elapsed Time (serializePdx): 8.15727 milliseconds​
> Elapsed Time (serializePdx): 8.09303 milliseconds​
> Elapsed Time (serializePdx): 7.89909 milliseconds​
> Elapsed Time (serializePdx): 8.37956 milliseconds​
> Elapsed Time (serializePdx): 8.21303 milliseconds​
> Elapsed Time (serializePdx): 8.14189 milliseconds​
> Elapsed Time (serializePdx): 8.21266 milliseconds​
> Elapsed Time (serializePdx): 8.21683 milliseconds​
> Elapsed Time (serializePdx): 7.78765 milliseconds
> {noformat}
> {noformat}
> Elapsed Time (serializePdx): 0.003014 milliseconds​
> Elapsed Time (serializePdx): 0.003 milliseconds​
> Elapsed Time (serializePdx): 0.003084 milliseconds​
> Elapsed Time (serializePdx): 0.003112 milliseconds​
> Elapsed Time (serializePdx): 0.00305 milliseconds​
> Elapsed Time (serializePdx): 0.003018 milliseconds​
> Elapsed Time (serializePdx): 0.003029 milliseconds​
> Elapsed Time (serializePdx): 0.003061 milliseconds​
> Elapsed Time (serializePdx): 0.003043 milliseconds​
> Elapsed Time (serializePdx): 0.003086 milliseconds​
> {noformat}



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


[jira] [Commented] (GEODE-8212) Change in PdxType class "<" operator impacts performance

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

alb3rtobr commented on pull request #619:
URL: https://github.com/apache/geode-native/pull/619#issuecomment-646185173


   Could you help me with the tests? I have not been able to compile them, 
there is a linker error saying there is an undefined reference to `PdxType` but 
I dont know how to change the cmake config to fix it. Thanks in advance!



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 in PdxType class "<" operator impacts performance
> 
>
> Key: GEODE-8212
> URL: https://issues.apache.org/jira/browse/GEODE-8212
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
> Attachments: performance_after_GEODE-7694.patch
>
>
> While investigating a performance problem of the C++ native client, it has 
> been observed that change in the PdxType class "<" operator introduced by 
> GEODE-7694 impacts performance of PdxHelper::serializePdx().
> Im attaching a patch with some code and a test case I have used to benchmark 
> that method. With the current implementation in develop branch, creating just 
> 10 instances is enough to see the difference. The calls to serializePdx take 
> these times:
> {noformat}
> Elapsed Time (serializePdx): 32.1322 milliseconds​
> Elapsed Time (serializePdx): 3.06044 milliseconds​
> Elapsed Time (serializePdx): 1.58791 milliseconds​
> Elapsed Time (serializePdx): 1.62466 milliseconds​
> Elapsed Time (serializePdx): 1.53676 milliseconds​
> Elapsed Time (serializePdx): 1.59278 milliseconds​
> Elapsed Time (serializePdx): 1.82878 milliseconds​
> Elapsed Time (serializePdx): 1.36811 milliseconds​
> Elapsed Time (serializePdx): 1.6956 milliseconds​
> Elapsed Time (serializePdx): 1.46873 milliseconds​
> Elapsed Time (serializePdx): 1.53206 milliseconds​
> {noformat}
> While these are the times using the old "<" operator:
> {noformat}
> Elapsed Time (serializePdx): 56.1524 milliseconds
> Elapsed Time (serializePdx): 0.012327 milliseconds
> Elapsed Time (serializePdx): 0.006325 milliseconds
> Elapsed Time (serializePdx): 0.005419 milliseconds
> Elapsed Time (serializePdx): 0.005266 milliseconds
> Elapsed Time (serializePdx): 0.005662 milliseconds
> Elapsed Time (serializePdx): 0.005407 milliseconds
> Elapsed Time (serializePdx): 0.005286 milliseconds
> Elapsed Time (serializePdx): 0.005467 milliseconds
> Elapsed Time (serializePdx): 0.005276 milliseconds
> Elapsed Time (serializePdx): 0.005298 milliseconds
> {noformat}
> And after creating 50.000 instances, these are the times for the last 10 
> calls with the current "<" operator and with the old one respectively::
> {noformat}
> Elapsed Time (serializePdx): 8.11767 milliseconds​
> Elapsed Time (serializePdx): 8.15727 milliseconds​
> Elapsed Time (serializePdx): 8.09303 milliseconds​
> Elapsed Time (serializePdx): 7.89909 milliseconds​
> Elapsed Time (serializePdx): 8.37956 milliseconds​
> Elapsed Time (serializePdx): 8.21303 milliseconds​
> Elapsed Time (serializePdx): 8.14189 milliseconds​
> Elapsed Time (serializePdx): 8.21266 milliseconds​
> Elapsed Time (serializePdx): 8.21683 milliseconds​
> Elapsed Time (serializePdx): 7.78765 milliseconds
> {noformat}
> {noformat}
> Elapsed Time (serializePdx): 0.003014 milliseconds​
> Elapsed Time (serializePdx): 0.003 milliseconds​
> Elapsed Time (serializePdx): 0.003084 milliseconds​
> Elapsed Time (serializePdx): 0.003112 milliseconds​
> Elapsed Time (serializePdx): 0.00305 milliseconds​
> Elapsed Time (serializePdx): 0.003018 milliseconds​
> Elapsed Time (serializePdx): 0.003029 milliseconds​
> Elapsed Time (serializePdx): 0.003061 milliseconds​
> Elapsed Time (serializePdx): 0.003043 milliseconds​
> Elapsed Time (serializePdx): 0.003086 milliseconds​
> {noformat}



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


[jira] [Updated] (GEODE-8278) Gateway sender queues using heap memory way above configured value after server restart

2020-06-18 Thread Alberto Gomez (Jira)


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

Alberto Gomez updated GEODE-8278:
-
Description: 
In a Geode system with the following characteristics:
 * WAN replication
 * partition redundant regions
 * overflow configured for the gateway senders queues by means of persistence 
and maximum queue memory set.
 * gateway receivers stopped in one site (B)
 * Operations sent to the site that does not have the gateway receivers stopped 
(A)

When operations are sent to site A, the gateway sender queues start to grow as 
expected and the heap memory consumed by the queues does not grow indefinitely 
given that there is overflow to disk when the limit is reached.

But, if a server is restarted, the restarted server will show a much higher 
heap memory used than the memory used by this server before it was restarted or 
by the other servers.

This can even provoke that the server cannot be restarted if the heap memory it 
requires is above the limit configured.

According to the memory analyzer the entries taking up the memory are 
subclasses of VMThinDiskLRURegionEntryHeap.

The number of instances of this type are the same in the restarted server than 
in the not restarted servers but on the restarted server they take much more 
memory. The reason seems to be that they hold references to 
previousEvictionNode and nextEvictionNode.

 If redundancy is not configured for the region then the problem is not 
manifested, i.e. the heap memory used by the restarted server is similar to the 
one prior to the restart.

  was:
In a Geode system with the following characteristics:
 * WAN replication
 * partition redundant regions
 * overflow configured for the gateway senders queues by means of persistence 
and maximum queue memory set.
 * gateway receivers stopped in one site (B)
 * Operations sent to the site that does not have the gateway receivers stopped 
(A)

When operations are sent to site A, the gateway sender queues start to grow as 
expected and the heap memory consumed by the queues does not grow indefinitely 
given that there is overflow to disk when the limit is reached.

But, if a server is restarted, the restarted server will show a much higher 
heap memory used than the memory used by this server before it was restarted or 
by the other servers.

This can even provoke that the server cannot be restarted if the heap memory it 
requires is above the limit configured.

According to the memory analyzer the entries taking up the memory are 
subclasses of VMThinDiskLRURegionEntryHeap.

The number of instances of this type are the same in the restarted server than 
in the not restarted servers but on the restarted server they take much more 
memory. The reason seems to be that they hold references to 
previousEvictionNode and nextEvictionNode.

 


> Gateway sender queues using heap memory way above configured value after 
> server restart
> ---
>
> Key: GEODE-8278
> URL: https://issues.apache.org/jira/browse/GEODE-8278
> Project: Geode
>  Issue Type: Bug
>  Components: eviction
>Reporter: Alberto Gomez
>Assignee: Alberto Gomez
>Priority: Major
>
> In a Geode system with the following characteristics:
>  * WAN replication
>  * partition redundant regions
>  * overflow configured for the gateway senders queues by means of persistence 
> and maximum queue memory set.
>  * gateway receivers stopped in one site (B)
>  * Operations sent to the site that does not have the gateway receivers 
> stopped (A)
> When operations are sent to site A, the gateway sender queues start to grow 
> as expected and the heap memory consumed by the queues does not grow 
> indefinitely given that there is overflow to disk when the limit is reached.
> But, if a server is restarted, the restarted server will show a much higher 
> heap memory used than the memory used by this server before it was restarted 
> or by the other servers.
> This can even provoke that the server cannot be restarted if the heap memory 
> it requires is above the limit configured.
> According to the memory analyzer the entries taking up the memory are 
> subclasses of VMThinDiskLRURegionEntryHeap.
> The number of instances of this type are the same in the restarted server 
> than in the not restarted servers but on the restarted server they take much 
> more memory. The reason seems to be that they hold references to 
> previousEvictionNode and nextEvictionNode.
>  If redundancy is not configured for the region then the problem is not 
> manifested, i.e. the heap memory used by the restarted server is similar to 
> the one prior to the restart.



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


[jira] [Updated] (GEODE-8277) acceptance test certificates expired in Dockerized SNI acceptance tests

2020-06-18 Thread Bruce J Schuchardt (Jira)


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

Bruce J Schuchardt updated GEODE-8277:
--
Component/s: membership

> acceptance test certificates expired in Dockerized SNI acceptance tests
> ---
>
> Key: GEODE-8277
> URL: https://issues.apache.org/jira/browse/GEODE-8277
> Project: Geode
>  Issue Type: Bug
>  Components: membership, tests
>Reporter: Bill Burcham
>Assignee: Bruce J Schuchardt
>Priority: Major
>
> At least locator-maeve-keystore.jks is expired. This is causing CI failures 
> now.
> All the certs: the CA cert, and each of the three server certs are expired. 
> These need to all be regenerated using {{CertificateBuilder}} and friends.
> I found neither instructions nor a script for regenerating these keystores 
> and truststores. They may be there but I didn't find 'em.
> TODO:
> # regenerate signing (CA) cert in truststore.jks
> # create the three new keystores containing certs signed by the signing cert
> # make sure all the expirations are at least 10 years hence
> # make sure there is a README or better: a README and a script for generating 
> all that
> # make sure all the SNI acceptance tests pass locally {{./gradlew 
> :geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}



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


[jira] [Commented] (GEODE-8277) acceptance test certificates expired in Dockerized SNI acceptance tests

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

bschuchardt opened a new pull request #5274:
URL: https://github.com/apache/geode/pull/5274


   The old keystores have expired.  I've generated 100 year keystores and added 
a
   program to recreate them if necessary.
   
   I've inspected the new jks files to verify that they expire in 2120 and have 
run the SNI tests to ensure that they still work.
   
   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


> acceptance test certificates expired in Dockerized SNI acceptance tests
> ---
>
> Key: GEODE-8277
> URL: https://issues.apache.org/jira/browse/GEODE-8277
> Project: Geode
>  Issue Type: Bug
>  Components: tests
>Reporter: Bill Burcham
>Assignee: Bruce J Schuchardt
>Priority: Major
>
> At least locator-maeve-keystore.jks is expired. This is causing CI failures 
> now.
> All the certs: the CA cert, and each of the three server certs are expired. 
> These need to all be regenerated using {{CertificateBuilder}} and friends.
> I found neither instructions nor a script for regenerating these keystores 
> and truststores. They may be there but I didn't find 'em.
> TODO:
> # regenerate signing (CA) cert in truststore.jks
> # create the three new keystores containing certs signed by the signing cert
> # make sure all the expirations are at least 10 years hence
> # make sure there is a README or better: a README and a script for generating 
> all that
> # make sure all the SNI acceptance tests pass locally {{./gradlew 
> :geode-assembly:acceptanceTest --tests=org.apache.geode.client.sni.*}}



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


[jira] [Commented] (GEODE-8269) Improve test coverage

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

sabbeyPivotal commented on pull request #5262:
URL: https://github.com/apache/geode/pull/5262#issuecomment-646107055


   AcceptanceTestOpenJDK11 failure is not a result of these code changes.



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


> Improve test coverage
> -
>
> Key: GEODE-8269
> URL: https://issues.apache.org/jira/browse/GEODE-8269
> Project: Geode
>  Issue Type: Test
>  Components: redis, tests
>Reporter: Sarah Abbey
>Priority: Major
>
> Analyzed test coverage via Intellij and by looking through all tests.  There 
> were some test cases missing.  We either added them or created additional 
> stories in Tracker.



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


[jira] [Created] (GEODE-8278) Gateway sender queues using up a lot of heap space after server restart

2020-06-18 Thread Alberto Gomez (Jira)
Alberto Gomez created GEODE-8278:


 Summary: Gateway sender queues using up a lot of heap space after 
server restart
 Key: GEODE-8278
 URL: https://issues.apache.org/jira/browse/GEODE-8278
 Project: Geode
  Issue Type: Bug
  Components: eviction
Reporter: Alberto Gomez


In a Geode system with the following characteristics:
 * WAN replication
 * partition redundant regions
 * overflow configured for the gateway senders queues by means of persistence 
and maximum queue memory set.
 * gateway receivers stopped in one site (B)
 * Operations sent to the site that does not have the gateway receivers stopped 
(A)

When operations are sent to site A, the gateway sender queues start to grow as 
expected and the heap memory consumed by the queues does not grow indefinitely 
given that there is overflow to disk when the limit is reached.

But, if a server is restarted, the restarted server will show a much higher 
heap memory used than the memory used by this server before it was restarted or 
by the other servers.

This can even provoke that the server cannot be restarted if the heap memory it 
requires is above the limit configured.

According to the memory analyzer the entries taking up the memory are 
subclasses of VMThinDiskLRURegionEntryHeap.

The number of instances of this type are the same in the restarted server than 
in the not restarted servers but on the restarted server they take much more 
memory. The reason seems to be that they hold references to 
previousEvictionNode and nextEvictionNode.

 



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


[jira] [Commented] (GEODE-8240) View has old locator version number after rolling upgrade

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

Bill opened a new pull request #5273:
URL: https://github.com/apache/geode/pull/5273


   [GEODE-8240](https://issues.apache.org/jira/browse/GEODE-8240)
   
   This is an alternative solution to the one explored in 
https://github.com/apache/geode/pull/5269. This PR introduces a new interface 
`VersionOrdinal` to model not just versions we know about (as `Version` does) 
but also future versions. Formerly Geode modeled these as `short` but that 
presented difficulties in the many places where we need to compare versions. By 
unifying known and unknown versions under one interface, capable of providing 
generic comparison (`compareTo()`, `equals()`, and `hashCode()`) my hope is 
that we can eliminate this egregious loss of information (in that other PR's 
`Version` implementation):
   
   ```java
 @Override
 public Version getVersion() {
 public Version getVersion() {
   return versionObj;
   try {
 return Version.fromOrdinal(versionOrdinal);
   } catch (final UnsupportedSerializationVersionException e) {
 return Version.CURRENT;
   } 
   ```
   
   ### For all changes:
   - [x] Is there a JIRA ticket associated with this PR? Is it referenced in 
the commit message?
   
   - [x] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?
   
   - [x] Is your initial contribution a single, squashed commit?
   
   - [x] Does `gradlew build` run cleanly?
   
   - [ ] 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)?
   
   



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


> View has old locator version number after rolling upgrade
> -
>
> Key: GEODE-8240
> URL: https://issues.apache.org/jira/browse/GEODE-8240
> Project: Geode
>  Issue Type: Bug
>  Components: client/server, membership
>Reporter: Ernest Burghardt
>Assignee: Bill Burcham
>Priority: Major
>
> as shown in [https://github.com/apache/geode/pull/5224]
>  
>  upgrade from version 1.12 doesn't seem to occur on the Locator 
>  
> testRollServersOnPartitionedRegion_dataserializable  failure results:
> Expecting:
>  <"Member Count : 3
>  Name | Id
>   | 
> ---
>  vm2 | 127.0.0.1(vm2:35019:locator):41000(version:GEODE 1.12.0) 
> [Coordinator]
>  vm0 | 10.0.0.111(vm0:35025):41001
>  vm1 | 10.0.0.111(vm1:35030):41002
>  ">
>  not to contain:
>  <"1.12.0">



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


[jira] [Commented] (GEODE-8241) Locator does not observe locator-wait-time

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

aaronlindsey commented on pull request #5236:
URL: https://github.com/apache/geode/pull/5236#issuecomment-646043919


   @Bill @bschuchardt with the previous changes I noticed a failure after 
400-something runs. The chosen `locatorWaitTime` was not quite long enough. So 
I greatly increased the `locatorWaitTime` in the latest commit and then I was 
able to run the test 1000x successfully. I'm pretty confident that after the 
latest commit the chance of flakiness is negligible.



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


> Locator does not observe locator-wait-time
> --
>
> Key: GEODE-8241
> URL: https://issues.apache.org/jira/browse/GEODE-8241
> Project: Geode
>  Issue Type: Bug
>Reporter: Aaron Lindsey
>Assignee: Aaron Lindsey
>Priority: Major
>
> In the case where a locator starts up and is unable to connect to any other 
> locators, it may decide to become the membership coordinator even if 
> locator-wait-time has not elapsed.
> The following conditional from GMSJoinLeave.java causes the issue. There 
> should be an additional check for locator-wait-time before becoming 
> coordinator.
> {code:java}
> if (state.joinedMembersContacted <= 0 &&
> (tries >= minimumRetriesBeforeBecomingCoordinator ||
> state.locatorsContacted >= locators.size())) {
>   synchronized (viewInstallationLock) {
> becomeCoordinator();
>   }
>   return true;
> }
> {code}



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


[jira] [Commented] (GEODE-8240) View has old locator version number after rolling upgrade

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

Bill commented on a change in pull request #5269:
URL: https://github.com/apache/geode/pull/5269#discussion_r442241602



##
File path: 
geode-membership/src/main/java/org/apache/geode/distributed/internal/membership/gms/GMSMemberData.java
##
@@ -220,12 +220,16 @@ public InetAddress getInetAddress() {
   @Override
 
   public short getVersionOrdinal() {
-return this.versionObj.ordinal();
+return versionOrdinal;
   }
 
   @Override
   public Version getVersion() {
-return versionObj;
+try {
+  return Version.fromOrdinal(versionOrdinal);
+} catch (final UnsupportedSerializationVersionException e) {

Review comment:
   **This right here** is a big fat problem. We are silently throwing away 
information when the version ordinal represents an unknown version. One 
approach is to let the exception escape (as a checked exception.) But that 
entails fixing the 53 callers of this method. An alternative would be to 
"tunnel" the checked exception through an unchecked one.





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


> View has old locator version number after rolling upgrade
> -
>
> Key: GEODE-8240
> URL: https://issues.apache.org/jira/browse/GEODE-8240
> Project: Geode
>  Issue Type: Bug
>  Components: client/server, membership
>Reporter: Ernest Burghardt
>Assignee: Bill Burcham
>Priority: Major
>
> as shown in [https://github.com/apache/geode/pull/5224]
>  
>  upgrade from version 1.12 doesn't seem to occur on the Locator 
>  
> testRollServersOnPartitionedRegion_dataserializable  failure results:
> Expecting:
>  <"Member Count : 3
>  Name | Id
>   | 
> ---
>  vm2 | 127.0.0.1(vm2:35019:locator):41000(version:GEODE 1.12.0) 
> [Coordinator]
>  vm0 | 10.0.0.111(vm0:35025):41001
>  vm1 | 10.0.0.111(vm1:35030):41002
>  ">
>  not to contain:
>  <"1.12.0">



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


[jira] [Commented] (GEODE-8213) C++ native client performance bottleneck in access to serialization registry

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

albertogpz commented on pull request #611:
URL: https://github.com/apache/geode-native/pull/611#issuecomment-645864860


   This PR is closed as the solutions provided were not satisfactory. It will 
be revisited after #619 is merged as per the comments by @pivotal-jbarrett .



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++ native client performance bottleneck in access to serialization registry
> 
>
> Key: GEODE-8213
> URL: https://issues.apache.org/jira/browse/GEODE-8213
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Gomez
>Assignee: Alberto Gomez
>Priority: Major
> Fix For: 1.14.0
>
>
> It's been observed that when the number of threads used in a Geode client 
> using PdxSerialization is greater than 8, there is an important drop in 
> performance.
> Analysing the client process behavior with perf, it has been observed a very 
> high CPU consumption by a spinlock 
> (apache::geode::util::concurrent::spinlock_mutex::lock) used when accessing 
> the serialization registry .



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


[jira] [Commented] (GEODE-8213) C++ native client performance bottleneck in access to serialization registry

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

albertogpz closed pull request #611:
URL: https://github.com/apache/geode-native/pull/611


   



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++ native client performance bottleneck in access to serialization registry
> 
>
> Key: GEODE-8213
> URL: https://issues.apache.org/jira/browse/GEODE-8213
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Gomez
>Assignee: Alberto Gomez
>Priority: Major
> Fix For: 1.14.0
>
>
> It's been observed that when the number of threads used in a Geode client 
> using PdxSerialization is greater than 8, there is an important drop in 
> performance.
> Analysing the client process behavior with perf, it has been observed a very 
> high CPU consumption by a spinlock 
> (apache::geode::util::concurrent::spinlock_mutex::lock) used when accessing 
> the serialization registry .



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


[jira] [Commented] (GEODE-8213) C++ native client performance bottleneck in access to serialization registry

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

albertogpz commented on pull request #611:
URL: https://github.com/apache/geode-native/pull/611#issuecomment-645861561


   > I think we should close this PR and revisit if after the fixes in #619 to 
be merged. After that I think It might just be safe to start by replacing the 
spinlock with just a plain old mutex to reduce the CPU load. It may not bench 
as good but solves the issue of CPU load under contention.
   
   I agree



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++ native client performance bottleneck in access to serialization registry
> 
>
> Key: GEODE-8213
> URL: https://issues.apache.org/jira/browse/GEODE-8213
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Gomez
>Assignee: Alberto Gomez
>Priority: Major
> Fix For: 1.14.0
>
>
> It's been observed that when the number of threads used in a Geode client 
> using PdxSerialization is greater than 8, there is an important drop in 
> performance.
> Analysing the client process behavior with perf, it has been observed a very 
> high CPU consumption by a spinlock 
> (apache::geode::util::concurrent::spinlock_mutex::lock) used when accessing 
> the serialization registry .



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


[jira] [Commented] (GEODE-8264) add unit test coverage of serialization code for RedisData classes

2020-06-18 Thread ASF GitHub Bot (Jira)


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

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

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


   



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 unit test coverage of serialization code for RedisData classes
> --
>
> Key: GEODE-8264
> URL: https://issues.apache.org/jira/browse/GEODE-8264
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Priority: Major
>
> The classes that implement the RedisData interface should have unit tests 
> that verify that the serialization code is correct.
>  



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


[jira] [Resolved] (GEODE-8264) add unit test coverage of serialization code for RedisData classes

2020-06-18 Thread Darrel Schneider (Jira)


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

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

> add unit test coverage of serialization code for RedisData classes
> --
>
> Key: GEODE-8264
> URL: https://issues.apache.org/jira/browse/GEODE-8264
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Darrel Schneider
>Priority: Major
> Fix For: 1.14.0
>
>
> The classes that implement the RedisData interface should have unit tests 
> that verify that the serialization code is correct.
>  



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