[jira] [Commented] (GEODE-8615) Update gitignore with tools/gnmsg entries

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

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


   cc: @pdxcodemonkey 



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


> Update gitignore with tools/gnmsg entries
> -
>
> Key: GEODE-8615
> URL: https://issues.apache.org/jira/browse/GEODE-8615
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
>
> Following entries should be added to gitignore:
> * /tools/gnmsg/.idea/
> * /tools/gnmsg/__pycache__/



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


[jira] [Commented] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

sabbey37 commented on a change in pull request #5627:
URL: https://github.com/apache/geode/pull/5627#discussion_r505871824



##
File path: 
geode-redis/src/main/java/org/apache/geode/redis/internal/executor/key/ScanExecutor.java
##
@@ -36,91 +39,87 @@
   public RedisResponse executeCommand(Command command, ExecutionHandlerContext 
context) {
 List commandElems = command.getProcessedCommand();
 
-if (commandElems.size() < 2) {
-  return RedisResponse.error(ArityDef.SCAN);
-}
-
 String cursorString = command.getStringKey();
-int cursor = 0;
-Pattern matchPattern = null;
-String globMatchString = null;
+BigInteger cursor;
+Pattern matchPattern;
+String globPattern = null;
 int count = DEFAULT_COUNT;
+
 try {
-  cursor = Integer.parseInt(cursorString);
+  cursor = new BigInteger(cursorString).abs();
 } catch (NumberFormatException e) {
   return RedisResponse.error(ERROR_CURSOR);
 }
-if (cursor < 0) {
+
+if (cursor.compareTo(UNSIGNED_LONG_CAPACITY) > 0) {
   return RedisResponse.error(ERROR_CURSOR);
 }
 
-if (commandElems.size() > 3) {
-  try {
-byte[] bytes = commandElems.get(2);
-String tmp = Coder.bytesToString(bytes);
-if (tmp.equalsIgnoreCase("MATCH")) {
-  bytes = commandElems.get(3);
-  globMatchString = Coder.bytesToString(bytes);
-} else if (tmp.equalsIgnoreCase("COUNT")) {
-  bytes = commandElems.get(3);
-  count = Coder.bytesToInt(bytes);
-}
-  } catch (NumberFormatException e) {
-return RedisResponse.error(ERROR_COUNT);
-  }
+if (!cursor.equals(context.getScanCursor())) {
+  cursor = new BigInteger("0");
 }
 
-if (commandElems.size() > 5) {
-  try {
-byte[] bytes = commandElems.get(4);
-String tmp = Coder.bytesToString(bytes);
-if (tmp.equalsIgnoreCase("COUNT")) {
-  bytes = commandElems.get(5);
-  count = Coder.bytesToInt(bytes);
+for (int i = 2; i < commandElems.size(); i = i + 2) {
+  byte[] commandElemBytes = commandElems.get(i);
+  String keyword = Coder.bytesToString(commandElemBytes);
+  if (keyword.equalsIgnoreCase("MATCH")) {
+commandElemBytes = commandElems.get(i + 1);
+globPattern = Coder.bytesToString(commandElemBytes);
+
+  } else if (keyword.equalsIgnoreCase("COUNT")) {
+commandElemBytes = commandElems.get(i + 1);
+try {
+  count = Coder.bytesToInt(commandElemBytes);
+} catch (NumberFormatException e) {
+  return RedisResponse.error(ERROR_NOT_INTEGER);
+}
+
+if (count < 1) {
+  return RedisResponse.error(ERROR_SYNTAX);
 }
-  } catch (NumberFormatException e) {
-return RedisResponse.error(ERROR_COUNT);
-  }
-}
 
-if (count < 0) {
-  return RedisResponse.error(ERROR_COUNT);
+  } else {
+return RedisResponse.error(ERROR_SYNTAX);
+  }
 }
 
 try {
-  matchPattern = convertGlobToRegex(globMatchString);
+  matchPattern = convertGlobToRegex(globPattern);
 } catch (PatternSyntaxException e) {
-  return RedisResponse.error(ERROR_ILLEGAL_GLOB);
+  LogService.getLogger().warn(
+  "Could not compile the pattern: '{}' due to the following exception: 
'{}'. SCAN will return an empty list.",
+  globPattern, e.getMessage());
+  return RedisResponse.emptyScan();
 }
 
-List returnList = getIteration(getDataRegion(context).keySet(), 
matchPattern, count,
+List returnList = scan(getDataRegion(context).keySet(), 
matchPattern, count,
 cursor);
+context.setScanCursor(new BigInteger((String) returnList.get(0)));
 
 return RedisResponse.scan(returnList);
   }
 
-  private List getIteration(Collection list, Pattern 
matchPattern,
-  int count, int cursor) {
-List returnList = new ArrayList<>();
+  private List scan(Collection list, Pattern 
matchPattern,

Review comment:
   Good idea! I just implemented it. Let me know what you think.





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

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


> Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
> -
>
> Key: GEODE-8585
> URL: https://issues.apache.org/jira/browse/GEODE-8585
> Project: Geode
>  Issue Type: Bug
>  Components: redis

[jira] [Created] (GEODE-8621) Redis SPOP can return incorrect string type

2020-10-16 Thread Jens Deppe (Jira)
Jens Deppe created GEODE-8621:
-

 Summary: Redis SPOP can return incorrect string type
 Key: GEODE-8621
 URL: https://issues.apache.org/jira/browse/GEODE-8621
 Project: Geode
  Issue Type: Test
  Components: redis
Reporter: Jens Deppe


When SPOP is used with just a key argument and no count, the single return 
value should be a bulk string and not a simple string.



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


[jira] [Updated] (GEODE-8621) Redis SPOP can return incorrect string type

2020-10-16 Thread ASF GitHub Bot (Jira)


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

ASF GitHub Bot updated GEODE-8621:
--
Labels: pull-request-available  (was: )

> Redis SPOP can return incorrect string type
> ---
>
> Key: GEODE-8621
> URL: https://issues.apache.org/jira/browse/GEODE-8621
> Project: Geode
>  Issue Type: Test
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
>
> When SPOP is used with just a key argument and no count, the single return 
> value should be a bulk string and not a simple string.



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


[jira] [Commented] (GEODE-8621) Redis SPOP can return incorrect string type

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

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


   - Without a count argument, SPOP should return the result as a bulk
 string.
   
   Authored-by: Jens Deppe 
   
   Thank you for submitting a contribution to Apache Geode.
   
   In order to streamline the review of the contribution we ask you
   to ensure the following steps have been taken:
   
   ### For all changes:
   - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in 
the commit message?
   
   - [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?
   
   - [ ] Is your initial contribution a single, squashed commit?
   
   - [ ] Does `gradlew build` run cleanly?
   
   - [ ] Have you written or updated unit tests to verify your changes?
   
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?
   
   ### Note:
   Please ensure that once the PR is submitted, check Concourse for build 
issues and
   submit an update to your PR as soon as possible. If you need help, please 
send an
   email to d...@geode.apache.org.
   



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

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


> Redis SPOP can return incorrect string type
> ---
>
> Key: GEODE-8621
> URL: https://issues.apache.org/jira/browse/GEODE-8621
> Project: Geode
>  Issue Type: Test
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>
> When SPOP is used with just a key argument and no count, the single return 
> value should be a bulk string and not a simple string.



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


[jira] [Created] (GEODE-8622) Redis INCRBYFLOAT should return an error message consistent with native Redis

2020-10-16 Thread Jens Deppe (Jira)
Jens Deppe created GEODE-8622:
-

 Summary: Redis INCRBYFLOAT should return an error message 
consistent with native Redis
 Key: GEODE-8622
 URL: https://issues.apache.org/jira/browse/GEODE-8622
 Project: Geode
  Issue Type: Improvement
  Components: redis
Reporter: Jens Deppe


Geode Redis:

{noformat}
127.0.0.1:6379> set anshin-1 weeble
OK
127.0.0.1:6379> incrbyfloat anshin-1 2.0e2f
(error) ERR Value at this key cannot be incremented numerically
{noformat}

Native Redis:
{noformat}
ERR value is not a valid float
{noformat}



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


[jira] [Commented] (GEODE-8613) Remove exclusive access to pool connection creation/removal in native client

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

pivotal-jbarrett commented on pull request #676:
URL: https://github.com/apache/geode-native/pull/676#issuecomment-710089765


   > > I need more time to review this for correctness. I think the locking is 
required here to both protect concurrent updates to the `m_poolSize` value in 
various places as well as synchronize the CPU caches of this member.
   > 
   > Wouldn't that already be guaranteed given that the type of `m_poolSize` is 
`std::atomic`?
   
   I hadn't looked into the type yet but mostly yes that should be safe. Though 
if the pool and count are mutated independently there could be some issues with 
a mismatch. I will poke into this later today. 



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

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


> Remove exclusive access to pool connection creation/removal in native client
> 
>
> Key: GEODE-8613
> URL: https://issues.apache.org/jira/browse/GEODE-8613
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Gomez
>Assignee: Alberto Gomez
>Priority: Major
>  Labels: pull-request-available
>
> The Apache Geode C++ native client uses a mutex to grant exclusive access to 
> the code that creates or removes pool connections (mutex_ member in 
> ThinClientPoolDM class). The reason behind seems to be to perform atomically 
> the creation of the connection and the update of the number of connections 
> (m_poolSize) of the pool so that the number of connections in the pool and 
> the counter are always aligned.
> This mutex is also used to protect the concurrent access to the connection 
> queue structure (ConnectionQueue class).
> So, the mutex is used for two different purposes.
> Getting this mutex while creating/removing a pool connection has an impact in 
> the performance of the client because connections cannot be created 
> concurrently but there are also negative side effects that could lead to a 
> freeze of the client if the connection creation is taking a long time (for 
> example when the DNS is not available and name resolution calls take seconds 
> to be answered).
> A particularly problematic case is that when a minimum number of connections 
> has been configured in the client, loadconditioning or connection expiration 
> is configured and the DNS becomes unavailable. If at a given point in time 
> the number of connections in the pool is lower than the minimum configured, 
> the thread that restores the minimum number of connections will try to create 
> a new connection and will not release the mutex until it has finished. This 
> will block other threads trying to get a connection from the queue 
> unnecessarily.
> In this ticket, it is proposed to remove the locking of the mutex when the 
> connection is created or removed. An alternative could be to create a new 
> mutex for the creation or removal of connections so that the access to the 
> ConnectionQueue is not affected by the creation/removal of connections but I 
> do not consider it necessary just to maintain consistent (and not only 
> eventually consistent) the number of connection of the pool and the counter 
> of the connections (m_poolSize).
> Note that this ticket does not propose to remove the use of the mutex to 
> access the ConnectionQueue. This will still be necessary to protect 
> concurrent access to the connection queue data structure.



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


[jira] [Commented] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

lgtm-com[bot] commented on pull request #5627:
URL: https://github.com/apache/geode/pull/5627#issuecomment-710095163


   This pull request **introduces 2 alerts** when merging 
681e73630254e9db9800d86663411e06b28749a0 into 
4c4820207e263f1a9d11f34df5cd6cd2f9daf973 - [view on 
LGTM.com](https://lgtm.com/projects/g/apache/geode/rev/pr-65a447ce28c79e4440b13fc5873863b002516dd3)
   
   **new alerts:**
   
   * 2 for Dereferenced variable may be null



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

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


> Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
> -
>
> Key: GEODE-8585
> URL: https://issues.apache.org/jira/browse/GEODE-8585
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
>
> The parameter parsing for SCAN will not detect some illegal parameters. We 
> found that if we left off the MATCH keyword it just ignored the match string 
> we gave it. Native redis throws a syntax error. We also saw that COUNT could 
> follow MATCH but MATCH could not follow COUNT. I think it also allows COUNT 
> to be specified twice. HSCAN and SSCAN probably have similar issues.



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


[jira] [Commented] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

lgtm-com[bot] removed a comment on pull request #5627:
URL: https://github.com/apache/geode/pull/5627#issuecomment-710095163


   This pull request **introduces 2 alerts** when merging 
681e73630254e9db9800d86663411e06b28749a0 into 
4c4820207e263f1a9d11f34df5cd6cd2f9daf973 - [view on 
LGTM.com](https://lgtm.com/projects/g/apache/geode/rev/pr-65a447ce28c79e4440b13fc5873863b002516dd3)
   
   **new alerts:**
   
   * 2 for Dereferenced variable may be null



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

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


> Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
> -
>
> Key: GEODE-8585
> URL: https://issues.apache.org/jira/browse/GEODE-8585
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
>
> The parameter parsing for SCAN will not detect some illegal parameters. We 
> found that if we left off the MATCH keyword it just ignored the match string 
> we gave it. Native redis throws a syntax error. We also saw that COUNT could 
> follow MATCH but MATCH could not follow COUNT. I think it also allows COUNT 
> to be specified twice. HSCAN and SSCAN probably have similar issues.



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


[jira] [Assigned] (GEODE-8620) Actual redundancy of -1 in restore redundancy result

2020-10-16 Thread Donal Evans (Jira)


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

Donal Evans reassigned GEODE-8620:
--

Assignee: Donal Evans

> Actual redundancy of -1 in restore redundancy result
> 
>
> Key: GEODE-8620
> URL: https://issues.apache.org/jira/browse/GEODE-8620
> Project: Geode
>  Issue Type: Bug
>  Components: gfsh, management
>Affects Versions: 1.13.0
>Reporter: Aaron Lindsey
>Assignee: Donal Evans
>Priority: Major
>
> Steps to reproduce:
>  # Create a geode cluster with 1 locator and 2 servers.
>  # Create a region of type PARTITION_REDUNDANT.
>  # Put an entry into the region.
>  # Trigger a restore redundancy operation via the management REST API or gfsh.
>  # The result from the restore redundancy operation states that the actual 
> redundancy for the region is -1. However, the expected redundancy at this 
> point is 1 because there should be enough cache servers in the cluster to 
> hold the redundant copy.
>  # Stop one of the servers.
>  # Trigger another restore redundancy operation via the management REST API 
> or gfsh.
>  # The result from the second restore redundancy operation again states that 
> the actual redundancy for the region is -1. However, the region should be 
> counted as having zero redundant copies at this point because there is only 
> one cache server.
> I encountered this issue while using the management REST API, although the 
> same issue happens in the gfsh command. I assume fixing the gfsh command 
> would also fix the management REST API. If not, I can break this out into two 
> separate JIRAs.



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


[jira] [Commented] (GEODE-8621) Redis SPOP can return incorrect string type

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

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


   



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

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


> Redis SPOP can return incorrect string type
> ---
>
> Key: GEODE-8621
> URL: https://issues.apache.org/jira/browse/GEODE-8621
> Project: Geode
>  Issue Type: Test
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
>
> When SPOP is used with just a key argument and no count, the single return 
> value should be a bulk string and not a simple string.



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


[jira] [Commented] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

sabbey37 merged pull request #5627:
URL: https://github.com/apache/geode/pull/5627


   



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

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


> Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
> -
>
> Key: GEODE-8585
> URL: https://issues.apache.org/jira/browse/GEODE-8585
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
>
> The parameter parsing for SCAN will not detect some illegal parameters. We 
> found that if we left off the MATCH keyword it just ignored the match string 
> we gave it. Native redis throws a syntax error. We also saw that COUNT could 
> follow MATCH but MATCH could not follow COUNT. I think it also allows COUNT 
> to be specified twice. HSCAN and SSCAN probably have similar issues.



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


[jira] [Commented] (GEODE-8621) Redis SPOP can return incorrect string type

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8621:


Commit f0ee8e2bbce379ae5e5994b886808d15f3fed72d in geode's branch 
refs/heads/develop from Jens Deppe
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f0ee8e2 ]

GEODE-8621: Redis SPOP can return incorrect string type (#5634)

- Without a count argument, SPOP should return the result as a bulk
  string.

> Redis SPOP can return incorrect string type
> ---
>
> Key: GEODE-8621
> URL: https://issues.apache.org/jira/browse/GEODE-8621
> Project: Geode
>  Issue Type: Test
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
>
> When SPOP is used with just a key argument and no count, the single return 
> value should be a bulk string and not a simple string.



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


[jira] [Commented] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8585:


Commit f5dabd2561ff430f55d2bb8fa8ead050ba84d52f in geode's branch 
refs/heads/develop from Sarah
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f5dabd2 ]

GEODE-8585: Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters 
(#5627)



> Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
> -
>
> Key: GEODE-8585
> URL: https://issues.apache.org/jira/browse/GEODE-8585
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
>
> The parameter parsing for SCAN will not detect some illegal parameters. We 
> found that if we left off the MATCH keyword it just ignored the match string 
> we gave it. Native redis throws a syntax error. We also saw that COUNT could 
> follow MATCH but MATCH could not follow COUNT. I think it also allows COUNT 
> to be specified twice. HSCAN and SSCAN probably have similar issues.



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


[jira] [Commented] (GEODE-8621) Redis SPOP can return incorrect string type

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8621:


Commit f0ee8e2bbce379ae5e5994b886808d15f3fed72d in geode's branch 
refs/heads/develop from Jens Deppe
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f0ee8e2 ]

GEODE-8621: Redis SPOP can return incorrect string type (#5634)

- Without a count argument, SPOP should return the result as a bulk
  string.

> Redis SPOP can return incorrect string type
> ---
>
> Key: GEODE-8621
> URL: https://issues.apache.org/jira/browse/GEODE-8621
> Project: Geode
>  Issue Type: Test
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
>
> When SPOP is used with just a key argument and no count, the single return 
> value should be a bulk string and not a simple string.



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


[jira] [Commented] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8585:


Commit f5dabd2561ff430f55d2bb8fa8ead050ba84d52f in geode's branch 
refs/heads/develop from Sarah
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f5dabd2 ]

GEODE-8585: Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters 
(#5627)



> Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
> -
>
> Key: GEODE-8585
> URL: https://issues.apache.org/jira/browse/GEODE-8585
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
>
> The parameter parsing for SCAN will not detect some illegal parameters. We 
> found that if we left off the MATCH keyword it just ignored the match string 
> we gave it. Native redis throws a syntax error. We also saw that COUNT could 
> follow MATCH but MATCH could not follow COUNT. I think it also allows COUNT 
> to be specified twice. HSCAN and SSCAN probably have similar issues.



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


[jira] [Created] (GEODE-8623) Timing between DNS and Geode startup can result in permanent unknown host exceptions.

2020-10-16 Thread Jacob Barrett (Jira)
Jacob Barrett created GEODE-8623:


 Summary: Timing between DNS and Geode startup can result in 
permanent unknown host exceptions.
 Key: GEODE-8623
 URL: https://issues.apache.org/jira/browse/GEODE-8623
 Project: Geode
  Issue Type: Bug
Affects Versions: 1.13.0, 1.12.0, 1.11.0, 1.9.2, 1.10.0, 1.9.1, 1.9.0, 
1.14.0, 1.13.1
Reporter: Jacob Barrett


In a managed environment were local host name DNS entries and the startup of 
Geode happen concurrently it is possible for Geode to fail name resolution in 
the local hostname caching. If it fails to resolve the local hostname when 
loading the caching utility class then any service dependent on this name will 
fail without chance for recovery.

{code}
[error 2020/09/30 19:50:21.644 UTC  tid=0x1] Jmx manager could not be 
started because java.net.UnknownHostException
org.apache.geode.management.ManagementException: java.net.UnknownHostException
at 
org.apache.geode.management.internal.ManagementAgent.startAgent(ManagementAgent.java:133)
at 
org.apache.geode.management.internal.SystemManagementService.startManager(SystemManagementService.java:432)
at 
org.apache.geode.management.internal.beans.ManagementAdapter.handleCacheCreation(ManagementAdapter.java:181)
at 
org.apache.geode.management.internal.beans.ManagementListener.handleEvent(ManagementListener.java:127)
at 
org.apache.geode.distributed.internal.InternalDistributedSystem.notifyResourceEventListeners(InternalDistributedSystem.java:2063)
at 
org.apache.geode.distributed.internal.InternalDistributedSystem.handleResourceEvent(InternalDistributedSystem.java:606)
at 
org.apache.geode.internal.cache.GemFireCacheImpl.initialize(GemFireCacheImpl.java:1239)
at 
org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:219)
at 
org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:171)
at org.apache.geode.cache.CacheFactory.create(CacheFactory.java:142)
at 
org.apache.geode.distributed.internal.DefaultServerLauncherCacheProvider.createCache(DefaultServerLauncherCacheProvider.java:52)
at 
org.apache.geode.distributed.ServerLauncher.createCache(ServerLauncher.java:887)
at 
org.apache.geode.distributed.ServerLauncher.start(ServerLauncher.java:803)
at 
org.apache.geode.distributed.ServerLauncher.run(ServerLauncher.java:732)
at 
org.apache.geode.distributed.ServerLauncher.main(ServerLauncher.java:251)
Caused by: java.net.UnknownHostException
at 
org.apache.geode.internal.net.SocketCreator.getLocalHost(SocketCreator.java:285)
at 
org.apache.geode.management.internal.ManagementAgent.configureAndStart(ManagementAgent.java:310)
at 
org.apache.geode.management.internal.ManagementAgent.startAgent(ManagementAgent.java:131)
... 14 more

[error 2020/09/30 19:50:21.724 UTC  tid=0x1] 
org.apache.geode.management.ManagementException: java.net.UnknownHostException

Exception in thread "main" org.apache.geode.management.ManagementException: 
java.net.UnknownHostException
at 
org.apache.geode.management.internal.ManagementAgent.startAgent(ManagementAgent.java:133)
at 
org.apache.geode.management.internal.SystemManagementService.startManager(SystemManagementService.java:432)
at 
org.apache.geode.management.internal.beans.ManagementAdapter.handleCacheCreation(ManagementAdapter.java:181)
at 
org.apache.geode.management.internal.beans.ManagementListener.handleEvent(ManagementListener.java:127)
at 
org.apache.geode.distributed.internal.InternalDistributedSystem.notifyResourceEventListeners(InternalDistributedSystem.java:2063)
at 
org.apache.geode.distributed.internal.InternalDistributedSystem.handleResourceEvent(InternalDistributedSystem.java:606)
at 
org.apache.geode.internal.cache.GemFireCacheImpl.initialize(GemFireCacheImpl.java:1239)
at 
org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:219)
at 
org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:171)
at org.apache.geode.cache.CacheFactory.create(CacheFactory.java:142)
at 
org.apache.geode.distributed.internal.DefaultServerLauncherCacheProvider.createCache(DefaultServerLauncherCacheProvider.java:52)
at 
org.apache.geode.distributed.ServerLauncher.createCache(ServerLauncher.java:887)
at 
org.apache.geode.distributed.ServerLauncher.start(ServerLauncher.java:803)
at 
org.apache.geode.distributed.ServerLauncher.run(ServerLauncher.java:732)
at 
org.apache.geode.distributed.ServerLauncher.main(ServerLauncher.java:251)
Caused by: java.net.UnknownHostException
at 
org.apache.geode.internal.net.SocketCreator.getLocalHost(SocketCreator.java:285)
at 
org.apache.geode.mana

[jira] [Updated] (GEODE-8623) Timing between DNS and Geode startup can result in permanent unknown host exceptions.

2020-10-16 Thread Jacob Barrett (Jira)


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

Jacob Barrett updated GEODE-8623:
-
Priority: Minor  (was: Major)

> Timing between DNS and Geode startup can result in permanent unknown host 
> exceptions.
> -
>
> Key: GEODE-8623
> URL: https://issues.apache.org/jira/browse/GEODE-8623
> Project: Geode
>  Issue Type: Bug
>Affects Versions: 1.9.0, 1.9.1, 1.10.0, 1.9.2, 1.11.0, 1.12.0, 1.13.0, 
> 1.14.0, 1.13.1
>Reporter: Jacob Barrett
>Priority: Minor
>
> In a managed environment were local host name DNS entries and the startup of 
> Geode happen concurrently it is possible for Geode to fail name resolution in 
> the local hostname caching. If it fails to resolve the local hostname when 
> loading the caching utility class then any service dependent on this name 
> will fail without chance for recovery.
> {code}
> [error 2020/09/30 19:50:21.644 UTC  tid=0x1] Jmx manager could not be 
> started because java.net.UnknownHostException
> org.apache.geode.management.ManagementException: java.net.UnknownHostException
>   at 
> org.apache.geode.management.internal.ManagementAgent.startAgent(ManagementAgent.java:133)
>   at 
> org.apache.geode.management.internal.SystemManagementService.startManager(SystemManagementService.java:432)
>   at 
> org.apache.geode.management.internal.beans.ManagementAdapter.handleCacheCreation(ManagementAdapter.java:181)
>   at 
> org.apache.geode.management.internal.beans.ManagementListener.handleEvent(ManagementListener.java:127)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.notifyResourceEventListeners(InternalDistributedSystem.java:2063)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.handleResourceEvent(InternalDistributedSystem.java:606)
>   at 
> org.apache.geode.internal.cache.GemFireCacheImpl.initialize(GemFireCacheImpl.java:1239)
>   at 
> org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:219)
>   at 
> org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:171)
>   at org.apache.geode.cache.CacheFactory.create(CacheFactory.java:142)
>   at 
> org.apache.geode.distributed.internal.DefaultServerLauncherCacheProvider.createCache(DefaultServerLauncherCacheProvider.java:52)
>   at 
> org.apache.geode.distributed.ServerLauncher.createCache(ServerLauncher.java:887)
>   at 
> org.apache.geode.distributed.ServerLauncher.start(ServerLauncher.java:803)
>   at 
> org.apache.geode.distributed.ServerLauncher.run(ServerLauncher.java:732)
>   at 
> org.apache.geode.distributed.ServerLauncher.main(ServerLauncher.java:251)
> Caused by: java.net.UnknownHostException
>   at 
> org.apache.geode.internal.net.SocketCreator.getLocalHost(SocketCreator.java:285)
>   at 
> org.apache.geode.management.internal.ManagementAgent.configureAndStart(ManagementAgent.java:310)
>   at 
> org.apache.geode.management.internal.ManagementAgent.startAgent(ManagementAgent.java:131)
>   ... 14 more
> [error 2020/09/30 19:50:21.724 UTC  tid=0x1] 
> org.apache.geode.management.ManagementException: java.net.UnknownHostException
> Exception in thread "main" org.apache.geode.management.ManagementException: 
> java.net.UnknownHostException
>   at 
> org.apache.geode.management.internal.ManagementAgent.startAgent(ManagementAgent.java:133)
>   at 
> org.apache.geode.management.internal.SystemManagementService.startManager(SystemManagementService.java:432)
>   at 
> org.apache.geode.management.internal.beans.ManagementAdapter.handleCacheCreation(ManagementAdapter.java:181)
>   at 
> org.apache.geode.management.internal.beans.ManagementListener.handleEvent(ManagementListener.java:127)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.notifyResourceEventListeners(InternalDistributedSystem.java:2063)
>   at 
> org.apache.geode.distributed.internal.InternalDistributedSystem.handleResourceEvent(InternalDistributedSystem.java:606)
>   at 
> org.apache.geode.internal.cache.GemFireCacheImpl.initialize(GemFireCacheImpl.java:1239)
>   at 
> org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:219)
>   at 
> org.apache.geode.internal.cache.InternalCacheBuilder.create(InternalCacheBuilder.java:171)
>   at org.apache.geode.cache.CacheFactory.create(CacheFactory.java:142)
>   at 
> org.apache.geode.distributed.internal.DefaultServerLauncherCacheProvider.createCache(DefaultServerLauncherCacheProvider.java:52)
>   at 
> org.apache.geode.distributed.ServerLauncher.createCache(ServerLauncher.java:887)
>   at 
> org.apache.geode.distributed.ServerLauncher.start(ServerLaunc

[jira] [Commented] (GEODE-8324) Events are not being replicated from one WAN site to another when there are multiple paths between the sites and the direct one is stopped

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8324:


Commit f57dea3f3633bdc749f16649d6ce4dbef1fcf752 in geode's branch 
refs/heads/feature/GEODE-8324 from Barry Oglesby
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f57dea3 ]

GEODE-8324: Added dunit test


> Events are not being replicated from one WAN site to another when there are 
> multiple paths between the sites and the direct one is stopped
> --
>
> Key: GEODE-8324
> URL: https://issues.apache.org/jira/browse/GEODE-8324
> Project: Geode
>  Issue Type: Bug
>  Components: wan
>Reporter: Barrett Oglesby
>Assignee: Barrett Oglesby
>Priority: Major
>  Labels: caching-applications, pull-request-available
>
> Scenario
>  
>  The configuration is a normal star/mesh pattern where each site is connected 
> to each other site.
> So, there are 2 paths from site-A to site-B:
>  - the direct (site-A -> site-B)
>  - the indirect path (site-A -> site-C -> site-B)
> If the direct path (meaning the sender in site-A to site-B) is stopped and a 
> put is done in site-A, site-B doesn't receive the event even though the 
> indirect path is not stopped.
> Here is the behavior:
> Site-A - dsid=1
>  Site-B - dsid=2
>  Site-C - dsid=3
> Site-A
>  --
>  Since site-A is configured with site-B and site-C, its events will contain 
> recipient dsids for those sites (2 and 3 below).
> The event sent to site-C will look like:
> {noformat}
> AbstractGatewaySender.distribute sender=site-C processing local event 
> newCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; key=0
> {noformat}
> Site-C
>  --
>  Site-C receives the event:
> {noformat}
> GatewayReceiverCommand.cmdExecute processing create region=/data; key=0
> {noformat}
> The sender to site-B drops the event since it thinks it is already a 
> recipient:
> {noformat}
> AbstractGatewaySender.distribute sender=site-B received event from remote 
> site receivedCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; 
> key=0; eventId=EventID[id=25 
> bytes;threadID=0x10030|1;sequenceID=0;bucketId=48]
> AbstractGatewaySender.distribute sender=site-B dropping event since it is 
> already a recipient
> {noformat}



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


[jira] [Commented] (GEODE-8324) Events are not being replicated from one WAN site to another when there are multiple paths between the sites and the direct one is stopped

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8324:


Commit f57dea3f3633bdc749f16649d6ce4dbef1fcf752 in geode's branch 
refs/heads/feature/GEODE-8324 from Barry Oglesby
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f57dea3 ]

GEODE-8324: Added dunit test


> Events are not being replicated from one WAN site to another when there are 
> multiple paths between the sites and the direct one is stopped
> --
>
> Key: GEODE-8324
> URL: https://issues.apache.org/jira/browse/GEODE-8324
> Project: Geode
>  Issue Type: Bug
>  Components: wan
>Reporter: Barrett Oglesby
>Assignee: Barrett Oglesby
>Priority: Major
>  Labels: caching-applications, pull-request-available
>
> Scenario
>  
>  The configuration is a normal star/mesh pattern where each site is connected 
> to each other site.
> So, there are 2 paths from site-A to site-B:
>  - the direct (site-A -> site-B)
>  - the indirect path (site-A -> site-C -> site-B)
> If the direct path (meaning the sender in site-A to site-B) is stopped and a 
> put is done in site-A, site-B doesn't receive the event even though the 
> indirect path is not stopped.
> Here is the behavior:
> Site-A - dsid=1
>  Site-B - dsid=2
>  Site-C - dsid=3
> Site-A
>  --
>  Since site-A is configured with site-B and site-C, its events will contain 
> recipient dsids for those sites (2 and 3 below).
> The event sent to site-C will look like:
> {noformat}
> AbstractGatewaySender.distribute sender=site-C processing local event 
> newCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; key=0
> {noformat}
> Site-C
>  --
>  Site-C receives the event:
> {noformat}
> GatewayReceiverCommand.cmdExecute processing create region=/data; key=0
> {noformat}
> The sender to site-B drops the event since it thinks it is already a 
> recipient:
> {noformat}
> AbstractGatewaySender.distribute sender=site-B received event from remote 
> site receivedCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; 
> key=0; eventId=EventID[id=25 
> bytes;threadID=0x10030|1;sequenceID=0;bucketId=48]
> AbstractGatewaySender.distribute sender=site-B dropping event since it is 
> already a recipient
> {noformat}



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


[jira] [Commented] (GEODE-8324) Events are not being replicated from one WAN site to another when there are multiple paths between the sites and the direct one is stopped

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8324:


Commit f57dea3f3633bdc749f16649d6ce4dbef1fcf752 in geode's branch 
refs/heads/feature/GEODE-8324 from Barry Oglesby
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f57dea3 ]

GEODE-8324: Added dunit test


> Events are not being replicated from one WAN site to another when there are 
> multiple paths between the sites and the direct one is stopped
> --
>
> Key: GEODE-8324
> URL: https://issues.apache.org/jira/browse/GEODE-8324
> Project: Geode
>  Issue Type: Bug
>  Components: wan
>Reporter: Barrett Oglesby
>Assignee: Barrett Oglesby
>Priority: Major
>  Labels: caching-applications, pull-request-available
>
> Scenario
>  
>  The configuration is a normal star/mesh pattern where each site is connected 
> to each other site.
> So, there are 2 paths from site-A to site-B:
>  - the direct (site-A -> site-B)
>  - the indirect path (site-A -> site-C -> site-B)
> If the direct path (meaning the sender in site-A to site-B) is stopped and a 
> put is done in site-A, site-B doesn't receive the event even though the 
> indirect path is not stopped.
> Here is the behavior:
> Site-A - dsid=1
>  Site-B - dsid=2
>  Site-C - dsid=3
> Site-A
>  --
>  Since site-A is configured with site-B and site-C, its events will contain 
> recipient dsids for those sites (2 and 3 below).
> The event sent to site-C will look like:
> {noformat}
> AbstractGatewaySender.distribute sender=site-C processing local event 
> newCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; key=0
> {noformat}
> Site-C
>  --
>  Site-C receives the event:
> {noformat}
> GatewayReceiverCommand.cmdExecute processing create region=/data; key=0
> {noformat}
> The sender to site-B drops the event since it thinks it is already a 
> recipient:
> {noformat}
> AbstractGatewaySender.distribute sender=site-B received event from remote 
> site receivedCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; 
> key=0; eventId=EventID[id=25 
> bytes;threadID=0x10030|1;sequenceID=0;bucketId=48]
> AbstractGatewaySender.distribute sender=site-B dropping event since it is 
> already a recipient
> {noformat}



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


[jira] [Commented] (GEODE-8324) Events are not being replicated from one WAN site to another when there are multiple paths between the sites and the direct one is stopped

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8324:


Commit f57dea3f3633bdc749f16649d6ce4dbef1fcf752 in geode's branch 
refs/heads/feature/GEODE-8324 from Barry Oglesby
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f57dea3 ]

GEODE-8324: Added dunit test


> Events are not being replicated from one WAN site to another when there are 
> multiple paths between the sites and the direct one is stopped
> --
>
> Key: GEODE-8324
> URL: https://issues.apache.org/jira/browse/GEODE-8324
> Project: Geode
>  Issue Type: Bug
>  Components: wan
>Reporter: Barrett Oglesby
>Assignee: Barrett Oglesby
>Priority: Major
>  Labels: caching-applications, pull-request-available
>
> Scenario
>  
>  The configuration is a normal star/mesh pattern where each site is connected 
> to each other site.
> So, there are 2 paths from site-A to site-B:
>  - the direct (site-A -> site-B)
>  - the indirect path (site-A -> site-C -> site-B)
> If the direct path (meaning the sender in site-A to site-B) is stopped and a 
> put is done in site-A, site-B doesn't receive the event even though the 
> indirect path is not stopped.
> Here is the behavior:
> Site-A - dsid=1
>  Site-B - dsid=2
>  Site-C - dsid=3
> Site-A
>  --
>  Since site-A is configured with site-B and site-C, its events will contain 
> recipient dsids for those sites (2 and 3 below).
> The event sent to site-C will look like:
> {noformat}
> AbstractGatewaySender.distribute sender=site-C processing local event 
> newCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; key=0
> {noformat}
> Site-C
>  --
>  Site-C receives the event:
> {noformat}
> GatewayReceiverCommand.cmdExecute processing create region=/data; key=0
> {noformat}
> The sender to site-B drops the event since it thinks it is already a 
> recipient:
> {noformat}
> AbstractGatewaySender.distribute sender=site-B received event from remote 
> site receivedCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; 
> key=0; eventId=EventID[id=25 
> bytes;threadID=0x10030|1;sequenceID=0;bucketId=48]
> AbstractGatewaySender.distribute sender=site-B dropping event since it is 
> already a recipient
> {noformat}



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


[jira] [Commented] (GEODE-8324) Events are not being replicated from one WAN site to another when there are multiple paths between the sites and the direct one is stopped

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8324:


Commit f57dea3f3633bdc749f16649d6ce4dbef1fcf752 in geode's branch 
refs/heads/feature/GEODE-8324 from Barry Oglesby
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f57dea3 ]

GEODE-8324: Added dunit test


> Events are not being replicated from one WAN site to another when there are 
> multiple paths between the sites and the direct one is stopped
> --
>
> Key: GEODE-8324
> URL: https://issues.apache.org/jira/browse/GEODE-8324
> Project: Geode
>  Issue Type: Bug
>  Components: wan
>Reporter: Barrett Oglesby
>Assignee: Barrett Oglesby
>Priority: Major
>  Labels: caching-applications, pull-request-available
>
> Scenario
>  
>  The configuration is a normal star/mesh pattern where each site is connected 
> to each other site.
> So, there are 2 paths from site-A to site-B:
>  - the direct (site-A -> site-B)
>  - the indirect path (site-A -> site-C -> site-B)
> If the direct path (meaning the sender in site-A to site-B) is stopped and a 
> put is done in site-A, site-B doesn't receive the event even though the 
> indirect path is not stopped.
> Here is the behavior:
> Site-A - dsid=1
>  Site-B - dsid=2
>  Site-C - dsid=3
> Site-A
>  --
>  Since site-A is configured with site-B and site-C, its events will contain 
> recipient dsids for those sites (2 and 3 below).
> The event sent to site-C will look like:
> {noformat}
> AbstractGatewaySender.distribute sender=site-C processing local event 
> newCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; key=0
> {noformat}
> Site-C
>  --
>  Site-C receives the event:
> {noformat}
> GatewayReceiverCommand.cmdExecute processing create region=/data; key=0
> {noformat}
> The sender to site-B drops the event since it thinks it is already a 
> recipient:
> {noformat}
> AbstractGatewaySender.distribute sender=site-B received event from remote 
> site receivedCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; 
> key=0; eventId=EventID[id=25 
> bytes;threadID=0x10030|1;sequenceID=0;bucketId=48]
> AbstractGatewaySender.distribute sender=site-B dropping event since it is 
> already a recipient
> {noformat}



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


[jira] [Resolved] (GEODE-8612) Remove unused Redis constants

2020-10-16 Thread Sarah Abbey (Jira)


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

Sarah Abbey resolved GEODE-8612.

Fix Version/s: 1.14.0
   Resolution: Fixed

> Remove unused Redis constants
> -
>
> Key: GEODE-8612
> URL: https://issues.apache.org/jira/browse/GEODE-8612
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Trivial
>  Labels: pull-request-available
> Fix For: 1.14.0
>
>
> Remove constants we no longer use in `RedisConstants`



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


[jira] [Resolved] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters

2020-10-16 Thread Sarah Abbey (Jira)


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

Sarah Abbey resolved GEODE-8585.

Fix Version/s: 1.14.0
   Resolution: Fixed

> Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
> -
>
> Key: GEODE-8585
> URL: https://issues.apache.org/jira/browse/GEODE-8585
> Project: Geode
>  Issue Type: Bug
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 1.14.0
>
>
> The parameter parsing for SCAN will not detect some illegal parameters. We 
> found that if we left off the MATCH keyword it just ignored the match string 
> we gave it. Native redis throws a syntax error. We also saw that COUNT could 
> follow MATCH but MATCH could not follow COUNT. I think it also allows COUNT 
> to be specified twice. HSCAN and SSCAN probably have similar issues.



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


[jira] [Resolved] (GEODE-8621) Redis SPOP can return incorrect string type

2020-10-16 Thread Sarah Abbey (Jira)


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

Sarah Abbey resolved GEODE-8621.

Fix Version/s: 1.14.0
 Assignee: Jens Deppe
   Resolution: Fixed

> Redis SPOP can return incorrect string type
> ---
>
> Key: GEODE-8621
> URL: https://issues.apache.org/jira/browse/GEODE-8621
> Project: Geode
>  Issue Type: Test
>  Components: redis
>Reporter: Jens Deppe
>Assignee: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.14.0
>
>
> When SPOP is used with just a key argument and no count, the single return 
> value should be a bulk string and not a simple string.



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


[jira] [Commented] (GEODE-8610) Add parameter checking to unsupported Redis commands

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

sabbey37 opened a new pull request #5635:
URL: https://github.com/apache/geode/pull/5635


   Create tests/add parameter 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


> Add parameter checking to unsupported Redis commands
> 
>
> Key: GEODE-8610
> URL: https://issues.apache.org/jira/browse/GEODE-8610
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>
> Create tests/add parameter check



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


[jira] [Updated] (GEODE-8610) Add parameter checking to unsupported Redis commands

2020-10-16 Thread ASF GitHub Bot (Jira)


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

ASF GitHub Bot updated GEODE-8610:
--
Labels: pull-request-available  (was: )

> Add parameter checking to unsupported Redis commands
> 
>
> Key: GEODE-8610
> URL: https://issues.apache.org/jira/browse/GEODE-8610
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
>
> Create tests/add parameter check



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


[jira] [Created] (GEODE-8624) Improve INCRBYFLOAT accuracy for very large values

2020-10-16 Thread Jens Deppe (Jira)
Jens Deppe created GEODE-8624:
-

 Summary: Improve INCRBYFLOAT accuracy for very large values
 Key: GEODE-8624
 URL: https://issues.apache.org/jira/browse/GEODE-8624
 Project: Geode
  Issue Type: Improvement
  Components: redis
Reporter: Jens Deppe


Currently native redis appears to be able to apply {{INCRBYFLOAT}} on values 
that are below the max of unsigned long long (18446744073709551615). However, 
since we're treating numbers as {{double}}s we can lose precision for very 
large values. For example:
{noformat}
set val 18446744073709551614
incrbyfloat val 1{noformat}
incorrectly returns {{18446744073709552000}}

Native redis produces a correct result.

We should consider switching to using {{BigInteger}} for all commands which 
perform calculations: {{INCR, INCR, INCRBYFLOAT, HINCRBY, HINCRBYFLOAT}}.



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


[jira] [Updated] (GEODE-8622) Redis INCRBYFLOAT should return an error message consistent with native Redis

2020-10-16 Thread ASF GitHub Bot (Jira)


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

ASF GitHub Bot updated GEODE-8622:
--
Labels: pull-request-available  (was: )

> Redis INCRBYFLOAT should return an error message consistent with native Redis
> -
>
> Key: GEODE-8622
> URL: https://issues.apache.org/jira/browse/GEODE-8622
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
>
> Geode Redis:
> {noformat}
> 127.0.0.1:6379> set anshin-1 weeble
> OK
> 127.0.0.1:6379> incrbyfloat anshin-1 2.0e2f
> (error) ERR Value at this key cannot be incremented numerically
> {noformat}
> Native Redis:
> {noformat}
> ERR value is not a valid float
> {noformat}



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


[jira] [Commented] (GEODE-8622) Redis INCRBYFLOAT should return an error message consistent with native Redis

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

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


   
   Thank you for submitting a contribution to Apache Geode.
   
   In order to streamline the review of the contribution we ask you
   to ensure the following steps have been taken:
   
   ### For all changes:
   - [ ] Is there a JIRA ticket associated with this PR? Is it referenced in 
the commit message?
   
   - [ ] Has your PR been rebased against the latest commit within the target 
branch (typically `develop`)?
   
   - [ ] Is your initial contribution a single, squashed commit?
   
   - [ ] Does `gradlew build` run cleanly?
   
   - [ ] Have you written or updated unit tests to verify your changes?
   
   - [ ] If adding new dependencies to the code, are these dependencies 
licensed in a way that is compatible for inclusion under [ASF 
2.0](http://www.apache.org/legal/resolved.html#category-a)?
   
   ### Note:
   Please ensure that once the PR is submitted, check Concourse for build 
issues and
   submit an update to your PR as soon as possible. If you need help, please 
send an
   email to d...@geode.apache.org.
   



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

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


> Redis INCRBYFLOAT should return an error message consistent with native Redis
> -
>
> Key: GEODE-8622
> URL: https://issues.apache.org/jira/browse/GEODE-8622
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>
> Geode Redis:
> {noformat}
> 127.0.0.1:6379> set anshin-1 weeble
> OK
> 127.0.0.1:6379> incrbyfloat anshin-1 2.0e2f
> (error) ERR Value at this key cannot be incremented numerically
> {noformat}
> Native Redis:
> {noformat}
> ERR value is not a valid float
> {noformat}



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


[jira] [Commented] (GEODE-8615) Update gitignore with tools/gnmsg entries

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

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


   



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


> Update gitignore with tools/gnmsg entries
> -
>
> Key: GEODE-8615
> URL: https://issues.apache.org/jira/browse/GEODE-8615
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
>
> Following entries should be added to gitignore:
> * /tools/gnmsg/.idea/
> * /tools/gnmsg/__pycache__/



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


[jira] [Commented] (GEODE-8615) Update gitignore with tools/gnmsg entries

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8615:


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

GEODE-8615: Update gitignore with tools/gnmsg entries (#677)



> Update gitignore with tools/gnmsg entries
> -
>
> Key: GEODE-8615
> URL: https://issues.apache.org/jira/browse/GEODE-8615
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
>
> Following entries should be added to gitignore:
> * /tools/gnmsg/.idea/
> * /tools/gnmsg/__pycache__/



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


[jira] [Commented] (GEODE-8615) Update gitignore with tools/gnmsg entries

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8615:


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

GEODE-8615: Update gitignore with tools/gnmsg entries (#677)



> Update gitignore with tools/gnmsg entries
> -
>
> Key: GEODE-8615
> URL: https://issues.apache.org/jira/browse/GEODE-8615
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
>
> Following entries should be added to gitignore:
> * /tools/gnmsg/.idea/
> * /tools/gnmsg/__pycache__/



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


[jira] [Commented] (GEODE-8593) Update native client examples to use Builder pattern

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

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



##
File path: 
docs/geode-native-docs-cpp/getting-started/getting-started-nc-client.html.md.erb
##
@@ -37,36 +37,37 @@ To connect to a server, your application must follow these 
steps:
 1. Instantiate a `CacheFactory`, setting characteristics of interest (for 
example, `log-level`).
 1. Create a cache and use it to instantiate a `PoolFactory`, specifying the 
hostname and port for the server locator.
 1. Create a named pool of network connections.
-1. Instantiate a region of the desired type (usually CACHING_PROXY or PROXY) 
and connect it by name to its counterpart on the server.
+1. Instantiate a region of the desired type (usually PROXY, sometimes 
CACHING_PROXY) and connect it by name to its counterpart on the server.
 
 Once the connection pool and the shared region are in place, your client 
application is ready to share data with the server.
 
 **Server Connection: C++ Example**
 
-This example of connecting to the server is taken from the C++ 
`put-get-remove` example.
-
-Instantiate a `CacheFactory` and set its characteristics:
+Create a cache and use it to instantiate a `CacheFactory` and set its 
characteristics:
 
 ``` cpp
-  auto cacheFactory = CacheFactory(); // instantiate cache factory
-  cacheFactory.set("log-level", "none");  // set cache log-level 
characteristics
+auto cache = CacheFactory()
+.set("log-level", "debug")
+.set("ssl-enabled", "true")
+.set("ssl-truststore", clientTruststore.string())
+.create();
 ```
 
-Create a cache and use it to instantiate a `PoolFactory`:
+Create a pool of network connections, and instantiate a region of the desired 
type:

Review comment:
   This should probably just read "Create a pool of network connections".  
The next block is the one that instantiates the region.





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


> Update native client examples to use Builder pattern
> 
>
> Key: GEODE-8593
> URL: https://issues.apache.org/jira/browse/GEODE-8593
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Affects Versions: 1.13.0
>Reporter: Dave Barnes
>Priority: Major
>  Labels: pull-request-available
>
> For both C++ and .NET examples, the section of code that creates the 
> connection pool should be improved to better illustrate the Builder pattern. 
> For example, in the C++ examples, current code is:
> ```
>   auto cacheFactory = CacheFactory();
>   cacheFactory.set("log-level", "none");
>   auto cache = cacheFactory.create();
>   auto poolFactory = cache.getPoolManager().createFactory();
>  
>   poolFactory.addLocator("localhost", 10334);
>   auto pool = poolFactory.create("pool");
> ```
> The improved version would be:
> ```
> auto cache = CacheFactory()
>.set("log-level", "debug")
>.set("ssl-enabled", "true")
>.set("ssl-truststore", clientTruststore.string())
>.create();
>   cache.getPoolManager()
>   .createFactory()
>   .addLocator("localhost", 10334)
>   .create("pool");
> ```
> Similarly for .NET examples.
> These doc snippets also appear in the user guides, so they'll need updating 
> in the docs, as well.



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


[jira] [Commented] (GEODE-8622) Redis INCRBYFLOAT should return an error message consistent with native Redis

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

sabbey37 commented on a change in pull request #5636:
URL: https://github.com/apache/geode/pull/5636#discussion_r506675816



##
File path: 
geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractIncrByFloatIntegrationTest.java
##
@@ -15,24 +15,25 @@
 package org.apache.geode.redis.internal.executor.string;
 
 import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
-import java.util.Random;
+import java.math.BigDecimal;
 
 import org.junit.After;
 import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Test;
 import redis.clients.jedis.Jedis;
+import redis.clients.jedis.Protocol;
 
 import org.apache.geode.test.dunit.rules.RedisPortSupplier;
 
 public abstract class AbstractIncrByFloatIntegrationTest implements 
RedisPortSupplier {
 
   private Jedis jedis;
-  private Random rand;
 
   @Before
   public void setUp() {
-rand = new Random();
 jedis = new Jedis("localhost", getPort(), 1000);

Review comment:
   It would be good to make this timeout the same as the one from 
awaitility:
   `Math.toIntExact(GeodeAwaitility.getTimeout().toMillis());`

##
File path: 
geode-redis/src/main/java/org/apache/geode/redis/internal/executor/string/IncrByFloatExecutor.java
##
@@ -46,15 +44,14 @@ public RedisResponse executeCommand(Command command,
 byte[] incrArray = commandElems.get(INCREMENT_INDEX);
 String doub = Coder.bytesToString(incrArray).toLowerCase();
 if (doub.contains("inf") || doub.contains("nan")) {

Review comment:
   Redis uses the methods `isnan` 
(https://en.cppreference.com/w/c/numeric/math/isnan) and `isinf` 
(https://en.cppreference.com/w/c/numeric/math/isinf) from the math library, 
which seem to check more than the string literals.  Also, not all strings that 
contain `inf` or `nan` would produce NaN or Infinity.  Some are just invalid 
floats.





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

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


> Redis INCRBYFLOAT should return an error message consistent with native Redis
> -
>
> Key: GEODE-8622
> URL: https://issues.apache.org/jira/browse/GEODE-8622
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
>
> Geode Redis:
> {noformat}
> 127.0.0.1:6379> set anshin-1 weeble
> OK
> 127.0.0.1:6379> incrbyfloat anshin-1 2.0e2f
> (error) ERR Value at this key cannot be incremented numerically
> {noformat}
> Native Redis:
> {noformat}
> ERR value is not a valid float
> {noformat}



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


[jira] [Commented] (GEODE-8622) Redis INCRBYFLOAT should return an error message consistent with native Redis

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

sabbey37 commented on a change in pull request #5636:
URL: https://github.com/apache/geode/pull/5636#discussion_r506701058



##
File path: 
geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractIncrByFloatIntegrationTest.java
##
@@ -15,24 +15,25 @@
 package org.apache.geode.redis.internal.executor.string;
 
 import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
-import java.util.Random;
+import java.math.BigDecimal;
 
 import org.junit.After;
 import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Test;
 import redis.clients.jedis.Jedis;
+import redis.clients.jedis.Protocol;
 
 import org.apache.geode.test.dunit.rules.RedisPortSupplier;
 
 public abstract class AbstractIncrByFloatIntegrationTest implements 
RedisPortSupplier {

Review comment:
   It would be nice to add a test making sure the correct error is returned 
when we try to do incrby on a key whose value is not a string.





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

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


> Redis INCRBYFLOAT should return an error message consistent with native Redis
> -
>
> Key: GEODE-8622
> URL: https://issues.apache.org/jira/browse/GEODE-8622
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
>
> Geode Redis:
> {noformat}
> 127.0.0.1:6379> set anshin-1 weeble
> OK
> 127.0.0.1:6379> incrbyfloat anshin-1 2.0e2f
> (error) ERR Value at this key cannot be incremented numerically
> {noformat}
> Native Redis:
> {noformat}
> ERR value is not a valid float
> {noformat}



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


[jira] [Commented] (GEODE-8622) Redis INCRBYFLOAT should return an error message consistent with native Redis

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

sabbey37 commented on a change in pull request #5636:
URL: https://github.com/apache/geode/pull/5636#discussion_r506701058



##
File path: 
geode-redis/src/integrationTest/java/org/apache/geode/redis/internal/executor/string/AbstractIncrByFloatIntegrationTest.java
##
@@ -15,24 +15,25 @@
 package org.apache.geode.redis.internal.executor.string;
 
 import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
 
-import java.util.Random;
+import java.math.BigDecimal;
 
 import org.junit.After;
 import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Test;
 import redis.clients.jedis.Jedis;
+import redis.clients.jedis.Protocol;
 
 import org.apache.geode.test.dunit.rules.RedisPortSupplier;
 
 public abstract class AbstractIncrByFloatIntegrationTest implements 
RedisPortSupplier {

Review comment:
   It would be nice to add a test making sure the correct error is returned 
when we try to do `INCRBYFLOAT` on a key whose value is not a string.





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

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


> Redis INCRBYFLOAT should return an error message consistent with native Redis
> -
>
> Key: GEODE-8622
> URL: https://issues.apache.org/jira/browse/GEODE-8622
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Jens Deppe
>Priority: Major
>  Labels: pull-request-available
>
> Geode Redis:
> {noformat}
> 127.0.0.1:6379> set anshin-1 weeble
> OK
> 127.0.0.1:6379> incrbyfloat anshin-1 2.0e2f
> (error) ERR Value at this key cannot be incremented numerically
> {noformat}
> Native Redis:
> {noformat}
> ERR value is not a valid float
> {noformat}



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


[jira] [Commented] (GEODE-8593) Update native client examples to use Builder pattern

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

davebarnes97 commented on a change in pull request #675:
URL: https://github.com/apache/geode-native/pull/675#discussion_r506703285



##
File path: 
docs/geode-native-docs-cpp/getting-started/getting-started-nc-client.html.md.erb
##
@@ -37,36 +37,37 @@ To connect to a server, your application must follow these 
steps:
 1. Instantiate a `CacheFactory`, setting characteristics of interest (for 
example, `log-level`).
 1. Create a cache and use it to instantiate a `PoolFactory`, specifying the 
hostname and port for the server locator.
 1. Create a named pool of network connections.
-1. Instantiate a region of the desired type (usually CACHING_PROXY or PROXY) 
and connect it by name to its counterpart on the server.
+1. Instantiate a region of the desired type (usually PROXY, sometimes 
CACHING_PROXY) and connect it by name to its counterpart on the server.
 
 Once the connection pool and the shared region are in place, your client 
application is ready to share data with the server.
 
 **Server Connection: C++ Example**
 
-This example of connecting to the server is taken from the C++ 
`put-get-remove` example.
-
-Instantiate a `CacheFactory` and set its characteristics:
+Create a cache and use it to instantiate a `CacheFactory` and set its 
characteristics:
 
 ``` cpp
-  auto cacheFactory = CacheFactory(); // instantiate cache factory
-  cacheFactory.set("log-level", "none");  // set cache log-level 
characteristics
+auto cache = CacheFactory()
+.set("log-level", "debug")
+.set("ssl-enabled", "true")
+.set("ssl-truststore", clientTruststore.string())
+.create();
 ```
 
-Create a cache and use it to instantiate a `PoolFactory`:
+Create a pool of network connections, and instantiate a region of the desired 
type:

Review comment:
   Good catch - thanks!





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

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


> Update native client examples to use Builder pattern
> 
>
> Key: GEODE-8593
> URL: https://issues.apache.org/jira/browse/GEODE-8593
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Affects Versions: 1.13.0
>Reporter: Dave Barnes
>Priority: Major
>  Labels: pull-request-available
>
> For both C++ and .NET examples, the section of code that creates the 
> connection pool should be improved to better illustrate the Builder pattern. 
> For example, in the C++ examples, current code is:
> ```
>   auto cacheFactory = CacheFactory();
>   cacheFactory.set("log-level", "none");
>   auto cache = cacheFactory.create();
>   auto poolFactory = cache.getPoolManager().createFactory();
>  
>   poolFactory.addLocator("localhost", 10334);
>   auto pool = poolFactory.create("pool");
> ```
> The improved version would be:
> ```
> auto cache = CacheFactory()
>.set("log-level", "debug")
>.set("ssl-enabled", "true")
>.set("ssl-truststore", clientTruststore.string())
>.create();
>   cache.getPoolManager()
>   .createFactory()
>   .addLocator("localhost", 10334)
>   .create("pool");
> ```
> Similarly for .NET examples.
> These doc snippets also appear in the user guides, so they'll need updating 
> in the docs, as well.



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


[jira] [Commented] (GEODE-8324) Events are not being replicated from one WAN site to another when there are multiple paths between the sites and the direct one is stopped

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8324:


Commit 23cfacff6cc875830416c11c0ccaaaebf15d36d2 in geode's branch 
refs/heads/feature/GEODE-8324 from Barry Oglesby
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=23cfacf ]

GEODE-8324: Updated dunit test


> Events are not being replicated from one WAN site to another when there are 
> multiple paths between the sites and the direct one is stopped
> --
>
> Key: GEODE-8324
> URL: https://issues.apache.org/jira/browse/GEODE-8324
> Project: Geode
>  Issue Type: Bug
>  Components: wan
>Reporter: Barrett Oglesby
>Assignee: Barrett Oglesby
>Priority: Major
>  Labels: caching-applications, pull-request-available
>
> Scenario
>  
>  The configuration is a normal star/mesh pattern where each site is connected 
> to each other site.
> So, there are 2 paths from site-A to site-B:
>  - the direct (site-A -> site-B)
>  - the indirect path (site-A -> site-C -> site-B)
> If the direct path (meaning the sender in site-A to site-B) is stopped and a 
> put is done in site-A, site-B doesn't receive the event even though the 
> indirect path is not stopped.
> Here is the behavior:
> Site-A - dsid=1
>  Site-B - dsid=2
>  Site-C - dsid=3
> Site-A
>  --
>  Since site-A is configured with site-B and site-C, its events will contain 
> recipient dsids for those sites (2 and 3 below).
> The event sent to site-C will look like:
> {noformat}
> AbstractGatewaySender.distribute sender=site-C processing local event 
> newCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; key=0
> {noformat}
> Site-C
>  --
>  Site-C receives the event:
> {noformat}
> GatewayReceiverCommand.cmdExecute processing create region=/data; key=0
> {noformat}
> The sender to site-B drops the event since it thinks it is already a 
> recipient:
> {noformat}
> AbstractGatewaySender.distribute sender=site-B received event from remote 
> site receivedCallbackArg=GatewaySenderEventCallbackArgument 
> [originatingSenderId=1;recipientGatewayReceivers={3, 2}]; region=/data; 
> key=0; eventId=EventID[id=25 
> bytes;threadID=0x10030|1;sequenceID=0;bucketId=48]
> AbstractGatewaySender.distribute sender=site-B dropping event since it is 
> already a recipient
> {noformat}



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


[jira] [Commented] (GEODE-8593) Update native client examples to use Builder pattern

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8593:


Commit 2918ff44b0d3ee6d914f6b31a9fac4465e7f203a in geode-native's branch 
refs/heads/develop from Dave Barnes
[ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=2918ff4 ]

GEODE-8593: Update geode-native examples to use builder pattern: C++ (#675)

* GEODE-8593: Update geode-native examples to use builder pattern: C++ examples 
and docs

> Update native client examples to use Builder pattern
> 
>
> Key: GEODE-8593
> URL: https://issues.apache.org/jira/browse/GEODE-8593
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Affects Versions: 1.13.0
>Reporter: Dave Barnes
>Priority: Major
>  Labels: pull-request-available
>
> For both C++ and .NET examples, the section of code that creates the 
> connection pool should be improved to better illustrate the Builder pattern. 
> For example, in the C++ examples, current code is:
> ```
>   auto cacheFactory = CacheFactory();
>   cacheFactory.set("log-level", "none");
>   auto cache = cacheFactory.create();
>   auto poolFactory = cache.getPoolManager().createFactory();
>  
>   poolFactory.addLocator("localhost", 10334);
>   auto pool = poolFactory.create("pool");
> ```
> The improved version would be:
> ```
> auto cache = CacheFactory()
>.set("log-level", "debug")
>.set("ssl-enabled", "true")
>.set("ssl-truststore", clientTruststore.string())
>.create();
>   cache.getPoolManager()
>   .createFactory()
>   .addLocator("localhost", 10334)
>   .create("pool");
> ```
> Similarly for .NET examples.
> These doc snippets also appear in the user guides, so they'll need updating 
> in the docs, as well.



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


[jira] [Commented] (GEODE-8593) Update native client examples to use Builder pattern

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8593:


Commit 2918ff44b0d3ee6d914f6b31a9fac4465e7f203a in geode-native's branch 
refs/heads/develop from Dave Barnes
[ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=2918ff4 ]

GEODE-8593: Update geode-native examples to use builder pattern: C++ (#675)

* GEODE-8593: Update geode-native examples to use builder pattern: C++ examples 
and docs

> Update native client examples to use Builder pattern
> 
>
> Key: GEODE-8593
> URL: https://issues.apache.org/jira/browse/GEODE-8593
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Affects Versions: 1.13.0
>Reporter: Dave Barnes
>Priority: Major
>  Labels: pull-request-available
>
> For both C++ and .NET examples, the section of code that creates the 
> connection pool should be improved to better illustrate the Builder pattern. 
> For example, in the C++ examples, current code is:
> ```
>   auto cacheFactory = CacheFactory();
>   cacheFactory.set("log-level", "none");
>   auto cache = cacheFactory.create();
>   auto poolFactory = cache.getPoolManager().createFactory();
>  
>   poolFactory.addLocator("localhost", 10334);
>   auto pool = poolFactory.create("pool");
> ```
> The improved version would be:
> ```
> auto cache = CacheFactory()
>.set("log-level", "debug")
>.set("ssl-enabled", "true")
>.set("ssl-truststore", clientTruststore.string())
>.create();
>   cache.getPoolManager()
>   .createFactory()
>   .addLocator("localhost", 10334)
>   .create("pool");
> ```
> Similarly for .NET examples.
> These doc snippets also appear in the user guides, so they'll need updating 
> in the docs, as well.



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


[jira] [Commented] (GEODE-8593) Update native client examples to use Builder pattern

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

davebarnes97 merged pull request #675:
URL: https://github.com/apache/geode-native/pull/675


   



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


> Update native client examples to use Builder pattern
> 
>
> Key: GEODE-8593
> URL: https://issues.apache.org/jira/browse/GEODE-8593
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Affects Versions: 1.13.0
>Reporter: Dave Barnes
>Priority: Major
>  Labels: pull-request-available
>
> For both C++ and .NET examples, the section of code that creates the 
> connection pool should be improved to better illustrate the Builder pattern. 
> For example, in the C++ examples, current code is:
> ```
>   auto cacheFactory = CacheFactory();
>   cacheFactory.set("log-level", "none");
>   auto cache = cacheFactory.create();
>   auto poolFactory = cache.getPoolManager().createFactory();
>  
>   poolFactory.addLocator("localhost", 10334);
>   auto pool = poolFactory.create("pool");
> ```
> The improved version would be:
> ```
> auto cache = CacheFactory()
>.set("log-level", "debug")
>.set("ssl-enabled", "true")
>.set("ssl-truststore", clientTruststore.string())
>.create();
>   cache.getPoolManager()
>   .createFactory()
>   .addLocator("localhost", 10334)
>   .create("pool");
> ```
> Similarly for .NET examples.
> These doc snippets also appear in the user guides, so they'll need updating 
> in the docs, as well.



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


[jira] [Resolved] (GEODE-8615) Update gitignore with tools/gnmsg entries

2020-10-16 Thread Alberto Bustamante Reyes (Jira)


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

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

> Update gitignore with tools/gnmsg entries
> -
>
> Key: GEODE-8615
> URL: https://issues.apache.org/jira/browse/GEODE-8615
> Project: Geode
>  Issue Type: Improvement
>  Components: native client
>Reporter: Alberto Bustamante Reyes
>Assignee: Alberto Bustamante Reyes
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.14.0
>
>
> Following entries should be added to gitignore:
> * /tools/gnmsg/.idea/
> * /tools/gnmsg/__pycache__/



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


[jira] [Created] (GEODE-8625) If the GatewaySenderEventImpl is retrieved from disk while marking events as possible duplicate, then the possibleDuplicate setting isn't retained

2020-10-16 Thread Barrett Oglesby (Jira)
Barrett Oglesby created GEODE-8625:
--

 Summary: If the GatewaySenderEventImpl is retrieved from disk 
while marking events as possible duplicate, then the possibleDuplicate setting 
isn't retained
 Key: GEODE-8625
 URL: https://issues.apache.org/jira/browse/GEODE-8625
 Project: Geode
  Issue Type: Bug
  Components: wan
Reporter: Barrett Oglesby


By default, when starting a member with a persisted region, the values are not 
read from disk. This includes WAN queues. One of the things that occurs after 
the primary lock is acquired for a bucket is to mark all events in the queue as 
possible duplicates. The markEventsAsDuplicate method uses LocalRegion.getNoLRU 
to retrieve the GatewaySenderEventImpl. This method doesn't retain the value in 
the region, so setting possibleDuplicate to true is lost.

Here is a stack dump of the call:
{noformat}
java.lang.Exception: Stack trace
at java.lang.Thread.dumpStack(Thread.java:1333)
at 
org.apache.geode.internal.cache.LocalRegion.getNoLRU(LocalRegion.java:3558)
at 
org.apache.geode.internal.cache.AbstractBucketRegionQueue.markEventsAsDuplicate(AbstractBucketRegionQueue.java:277)
at 
org.apache.geode.internal.cache.BucketRegionQueue.beforeAcquiringPrimaryState(BucketRegionQueue.java:206)
at 
org.apache.geode.internal.cache.BucketAdvisor.acquiredPrimaryLock(BucketAdvisor.java:1165)
at 
org.apache.geode.internal.cache.BucketAdvisor.acquirePrimaryRecursivelyForColocated(BucketAdvisor.java:1305)
at 
org.apache.geode.internal.cache.BucketAdvisor.access$700(BucketAdvisor.java:84)
at 
org.apache.geode.internal.cache.BucketAdvisor$VolunteeringDelegate.doVolunteerForPrimary(BucketAdvisor.java:2530)
at 
org.apache.geode.internal.cache.BucketAdvisor$VolunteeringDelegate.lambda$consumeQueue$0(BucketAdvisor.java:2728)
{noformat}
Here is an example for event at shadowKey=1857.

After the above call that event shows possibleDuplicate=true:
{noformat}
GatewaySenderEventImpl[region=/data;key=1537;value=Trade[id=1537; cusip=VMW; 
shares=54; price=993];possibleDuplicate=true;shadowKey=1857;...]
{noformat}
Dumping the events in the queue after recovery has completed (after the above 
call) shows the value as NOT_AVAILABLE:
{noformat}
RegionEntry (a VMThinDiskLRURegionEntryHeapLongKey) contains: [key 
class=java.lang.Long; value=1857]; [value 
class=org.apache.geode.internal.cache.Token$NotAvailable; value=NOT_AVAILABLE]
{noformat}
And when a member in the remote site is started, the batch containing that 
event shows possibleDuplicate=false:
{noformat}
GatewaySenderEventImpl[region=/data;key=1537;value=Trade[id=1537; cusip=VMW; 
shares=54; price=993];possibleDuplicate=false;shadowKey=1857;...]
{noformat}



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


[jira] [Commented] (GEODE-8610) Add parameter checking to unsupported Redis commands

2020-10-16 Thread ASF GitHub Bot (Jira)


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

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

sabbey37 merged pull request #5635:
URL: https://github.com/apache/geode/pull/5635


   



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 parameter checking to unsupported Redis commands
> 
>
> Key: GEODE-8610
> URL: https://issues.apache.org/jira/browse/GEODE-8610
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
>
> Create tests/add parameter check



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


[jira] [Commented] (GEODE-8610) Add parameter checking to unsupported Redis commands

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8610:


Commit f46d7ae956d98ac0df27cf093bb4d4a3dee33745 in geode's branch 
refs/heads/develop from Sarah
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=f46d7ae ]

GEODE-8610: Add parameter checking to unsupported Redis commands (#5635)



> Add parameter checking to unsupported Redis commands
> 
>
> Key: GEODE-8610
> URL: https://issues.apache.org/jira/browse/GEODE-8610
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 1.14.0
>
>
> Create tests/add parameter check



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


[jira] [Resolved] (GEODE-8610) Add parameter checking to unsupported Redis commands

2020-10-16 Thread Sarah Abbey (Jira)


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

Sarah Abbey resolved GEODE-8610.

Fix Version/s: 1.14.0
   Resolution: Fixed

> Add parameter checking to unsupported Redis commands
> 
>
> Key: GEODE-8610
> URL: https://issues.apache.org/jira/browse/GEODE-8610
> Project: Geode
>  Issue Type: Improvement
>  Components: redis
>Reporter: Sarah Abbey
>Assignee: Sarah Abbey
>Priority: Minor
>  Labels: pull-request-available
> Fix For: 1.14.0
>
>
> Create tests/add parameter check



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


[jira] [Commented] (GEODE-8593) Update native client examples to use Builder pattern

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8593:


Commit 03f16b7e17426dc940139e97c466041d4e8960c2 in geode-native's branch 
refs/heads/support/1.13 from Dave Barnes
[ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=03f16b7 ]

GEODE-8593: Update geode-native examples to use builder pattern: C++


> Update native client examples to use Builder pattern
> 
>
> Key: GEODE-8593
> URL: https://issues.apache.org/jira/browse/GEODE-8593
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Affects Versions: 1.13.0
>Reporter: Dave Barnes
>Priority: Major
>  Labels: pull-request-available
>
> For both C++ and .NET examples, the section of code that creates the 
> connection pool should be improved to better illustrate the Builder pattern. 
> For example, in the C++ examples, current code is:
> ```
>   auto cacheFactory = CacheFactory();
>   cacheFactory.set("log-level", "none");
>   auto cache = cacheFactory.create();
>   auto poolFactory = cache.getPoolManager().createFactory();
>  
>   poolFactory.addLocator("localhost", 10334);
>   auto pool = poolFactory.create("pool");
> ```
> The improved version would be:
> ```
> auto cache = CacheFactory()
>.set("log-level", "debug")
>.set("ssl-enabled", "true")
>.set("ssl-truststore", clientTruststore.string())
>.create();
>   cache.getPoolManager()
>   .createFactory()
>   .addLocator("localhost", 10334)
>   .create("pool");
> ```
> Similarly for .NET examples.
> These doc snippets also appear in the user guides, so they'll need updating 
> in the docs, as well.



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


[jira] [Commented] (GEODE-8593) Update native client examples to use Builder pattern

2020-10-16 Thread ASF subversion and git services (Jira)


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

ASF subversion and git services commented on GEODE-8593:


Commit 03f16b7e17426dc940139e97c466041d4e8960c2 in geode-native's branch 
refs/heads/support/1.13 from Dave Barnes
[ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=03f16b7 ]

GEODE-8593: Update geode-native examples to use builder pattern: C++


> Update native client examples to use Builder pattern
> 
>
> Key: GEODE-8593
> URL: https://issues.apache.org/jira/browse/GEODE-8593
> Project: Geode
>  Issue Type: Improvement
>  Components: docs, native client
>Affects Versions: 1.13.0
>Reporter: Dave Barnes
>Priority: Major
>  Labels: pull-request-available
>
> For both C++ and .NET examples, the section of code that creates the 
> connection pool should be improved to better illustrate the Builder pattern. 
> For example, in the C++ examples, current code is:
> ```
>   auto cacheFactory = CacheFactory();
>   cacheFactory.set("log-level", "none");
>   auto cache = cacheFactory.create();
>   auto poolFactory = cache.getPoolManager().createFactory();
>  
>   poolFactory.addLocator("localhost", 10334);
>   auto pool = poolFactory.create("pool");
> ```
> The improved version would be:
> ```
> auto cache = CacheFactory()
>.set("log-level", "debug")
>.set("ssl-enabled", "true")
>.set("ssl-truststore", clientTruststore.string())
>.create();
>   cache.getPoolManager()
>   .createFactory()
>   .addLocator("localhost", 10334)
>   .create("pool");
> ```
> Similarly for .NET examples.
> These doc snippets also appear in the user guides, so they'll need updating 
> in the docs, as well.



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


[jira] [Resolved] (GEODE-8536) StackOverflow can occur when Lucene IndexWriter is unable to be created

2020-10-16 Thread Donal Evans (Jira)


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

Donal Evans resolved GEODE-8536.

Fix Version/s: 1.14.0
   Resolution: Fixed

> StackOverflow can occur when Lucene IndexWriter is unable to be created
> ---
>
> Key: GEODE-8536
> URL: https://issues.apache.org/jira/browse/GEODE-8536
> Project: Geode
>  Issue Type: Bug
>  Components: functions, lucene
>Affects Versions: 1.12.0, 1.13.0, 1.14.0
>Reporter: Donal Evans
>Assignee: Donal Evans
>Priority: Major
>  Labels: pull-request-available
> Fix For: 1.14.0
>
>
> If, during a call to IndexRepositoryFactory.computeIndexRepository(), an 
> IOException is encountered when attempting to construct an IndexWriter, the 
> function retry logic will reattempt the execution. This allows transient 
> exceptions caused by concurrent modification of the fileAndChunk region to be 
> ignored and subsequent executions to succeed (see GEODE-7703). However, if 
> the IOException is consistently thrown, the infinitely retrying function can 
> cause a StackOverflow:
> {noformat}
> java.lang.StackOverflowError
> at 
> org.apache.geode.SystemFailure.startWatchDog(SystemFailure.java:320)
> at 
> org.apache.geode.SystemFailure.notifyWatchDog(SystemFailure.java:758)
> at org.apache.geode.SystemFailure.setFailure(SystemFailure.java:813)
> at 
> org.apache.geode.SystemFailure.initiateFailure(SystemFailure.java:790)
> at 
> org.apache.geode.internal.InternalDataSerializer.invokeToData(InternalDataSerializer.java:2251)
> at 
> org.apache.geode.internal.InternalDataSerializer.basicWriteObject(InternalDataSerializer.java:2031)
> at 
> org.apache.geode.DataSerializer.writeObject(DataSerializer.java:2839)
> at 
> org.apache.geode.internal.cache.partitioned.PartitionedRegionFunctionStreamingMessage.toData(PartitionedRegionFunctionStreamingMessage.java:192)
> at 
> org.apache.geode.internal.serialization.internal.DSFIDSerializerImpl.invokeToData(DSFIDSerializerImpl.java:213)
> at 
> org.apache.geode.internal.serialization.internal.DSFIDSerializerImpl.write(DSFIDSerializerImpl.java:137)
> at 
> org.apache.geode.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1484)
> at 
> org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:247)
> at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToMany(DirectChannel.java:306)
> at 
> org.apache.geode.distributed.internal.direct.DirectChannel.sendToOne(DirectChannel.java:182)
> at 
> org.apache.geode.distributed.internal.direct.DirectChannel.send(DirectChannel.java:511)
> at 
> org.apache.geode.distributed.internal.DistributionImpl.directChannelSend(DistributionImpl.java:346)
> at 
> org.apache.geode.distributed.internal.DistributionImpl.send(DistributionImpl.java:291)
> at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendViaMembershipManager(ClusterDistributionManager.java:2058)
> at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1986)
> at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2023)
> at 
> org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083)
> at 
> org.apache.geode.internal.cache.execute.PartitionedRegionFunctionResultWaiter.getPartitionedDataFrom(PartitionedRegionFunctionResultWaiter.java:89)
> at 
> org.apache.geode.internal.cache.PartitionedRegion.executeOnAllBuckets(PartitionedRegion.java:4079)
> at 
> org.apache.geode.internal.cache.PartitionedRegion.executeFunction(PartitionedRegion.java:3583)
> at 
> org.apache.geode.internal.cache.execute.PartitionedRegionFunctionExecutor.executeFunction(PartitionedRegionFunctionExecutor.java:220)
> at 
> org.apache.geode.internal.cache.execute.AbstractExecution.execute(AbstractExecution.java:376)
> at 
> org.apache.geode.internal.cache.execute.AbstractExecution.execute(AbstractExecution.java:359)
> at 
> org.apache.geode.internal.cache.execute.LocalResultCollectorImpl.getResultInternal(LocalResultCollectorImpl.java:139)
> at 
> org.apache.geode.internal.cache.execute.ResultCollectorHolder.getResult(ResultCollectorHolder.java:53)
> at 
> org.apache.geode.internal.cache.execute.LocalResultCollectorImpl.getResult(LocalResultCollectorImpl.java:112)
> at 
> org.apache.geode.internal.cache.partitioned.PRFunctionStreamingResultCollector.getResultInternal(PRFunctionStreamingResultCollector.java