[jira] [Commented] (GEODE-8496) bump dependencies for 1.14
[ https://issues.apache.org/jira/browse/GEODE-8496?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209349#comment-17209349 ] Geode Integration commented on GEODE-8496: -- OOM that forced archunit to be rolled back: [IntegrationTestOpenJDK8 #462|https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/IntegrationTestOpenJDK8/builds/462] > bump dependencies for 1.14 > -- > > Key: GEODE-8496 > URL: https://issues.apache.org/jira/browse/GEODE-8496 > Project: Geode > Issue Type: Improvement > Components: build >Reporter: Owen Nichols >Priority: Major > Labels: pull-request-available > Fix For: 1.14.0 > > > now is a good time in the lull between 1.13 and 1.14 to roll 3rd party > libraries to latest versions wherever possible. Doing this proactively helps > us stay ahead of CVEs and keep up with bugfixes. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8172) CI failure: ParallelWANPersistenceEnabledGatewaySenderOffHeapDUnitTest.testpersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived
[ https://issues.apache.org/jira/browse/GEODE-8172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209394#comment-17209394 ] Geode Integration commented on GEODE-8172: -- Seen again in [DistributedTestOpenJDK8 #530|https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/530] ... see [test results|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0395/test-results/distributedTest/1602007315/] or download [artifacts|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0395/test-artifacts/1602007315/distributedtestfiles-OpenJDK8-1.14.0-build.0395.tgz]. > CI failure: > ParallelWANPersistenceEnabledGatewaySenderOffHeapDUnitTest.testpersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived > --- > > Key: GEODE-8172 > URL: https://issues.apache.org/jira/browse/GEODE-8172 > Project: Geode > Issue Type: Bug > Components: wan >Reporter: Bruce J Schuchardt >Assignee: Mario Ivanac >Priority: Major > > Failed in a CI run > (https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/191#A). > No previous failures for this issue are found in JIRA and no recent WAN > changes could be detected. Flaky? > {noformat} > > Task :geode-wan:distributedTest > org.apache.geode.internal.cache.wan.offheap.ParallelWANPersistenceEnabledGatewaySenderOffHeapDUnitTest > > > testpersistentWanGateway_restartSenderWithCleanQueues_expectNoEventsReceived > FAILED > org.apache.geode.test.dunit.RMIException: While invoking > org.apache.geode.internal.cache.wan.parallel.ParallelWANPersistenceEnabledGatewaySenderDUnitTest$$Lambda$487/908301056.run > in VM 2 running on Host 8e35f765a792 with 8 VMs > Caused by: > org.awaitility.core.ConditionTimeoutException: Assertion condition > defined as a lambda expression in > org.apache.geode.internal.cache.wan.WANTestBase that uses int, > intorg.apache.geode.cache.Region Expected region entries: 0 but actual > entries: 20 present region keyset [3, 5, 8, 13, 16, 21, 27, 30, 35, 38, 43, > 45, 50, 54, 58, 62, 65, 68, 73, 78] expected:<0> but was:<20> within 5 > minutes. > Caused by: > java.lang.AssertionError: Expected region entries: 0 but actual > entries: 20 present region keyset [3, 5, 8, 13, 16, 21, 27, 30, 35, 38, 43, > 45, 50, 54, 58, 62, 65, 68, 73, 78] expected:<0> but was:<20> > 824 tests completed, 1 failed, 59 skipped > > Task :geode-wan:distributedTest FAILED > {noformat} -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8566) Redis native tests should not also stand up a Geode server
[ https://issues.apache.org/jira/browse/GEODE-8566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209406#comment-17209406 ] Geode Integration commented on GEODE-8566: -- Seen in [AcceptanceTestOpenJDK11 #499|https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/AcceptanceTestOpenJDK11/builds/499] ... see [test results|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0397/test-results/acceptanceTest/1602035558/] or download [artifacts|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0397/test-artifacts/1602035558/acceptancetestfiles-OpenJDK11-1.14.0-build.0397.tgz]. > Redis native tests should not also stand up a Geode server > -- > > Key: GEODE-8566 > URL: https://issues.apache.org/jira/browse/GEODE-8566 > Project: Geode > Issue Type: Test > Components: redis >Reporter: Jens Deppe >Assignee: Jens Deppe >Priority: Major > Labels: pull-request-available > Fix For: 1.14.0 > > > Our native acceptance tests currently extend from the integration tests and > both classes have a {{@ClassRule}} that results in both a native (container) > instance and a Geode instance starting up. Mostly not a problem except for > {{PubSubNativeAcceptanceTest}} which was not testing against native redis. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8566) Redis native tests should not also stand up a Geode server
[ https://issues.apache.org/jira/browse/GEODE-8566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209411#comment-17209411 ] Geode Integration commented on GEODE-8566: -- Seen in [AcceptanceTestOpenJDK11 #500|https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/AcceptanceTestOpenJDK11/builds/500] ... see [test results|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0398/test-results/acceptanceTest/1602048492/] or download [artifacts|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0398/test-artifacts/1602048492/acceptancetestfiles-OpenJDK11-1.14.0-build.0398.tgz]. > Redis native tests should not also stand up a Geode server > -- > > Key: GEODE-8566 > URL: https://issues.apache.org/jira/browse/GEODE-8566 > Project: Geode > Issue Type: Test > Components: redis >Reporter: Jens Deppe >Assignee: Jens Deppe >Priority: Major > Labels: pull-request-available > Fix For: 1.14.0 > > > Our native acceptance tests currently extend from the integration tests and > both classes have a {{@ClassRule}} that results in both a native (container) > instance and a Geode instance starting up. Mostly not a problem except for > {{PubSubNativeAcceptanceTest}} which was not testing against native redis. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Reopened] (GEODE-8566) Redis native tests should not also stand up a Geode server
[ https://issues.apache.org/jira/browse/GEODE-8566?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Owen Nichols reopened GEODE-8566: - > Redis native tests should not also stand up a Geode server > -- > > Key: GEODE-8566 > URL: https://issues.apache.org/jira/browse/GEODE-8566 > Project: Geode > Issue Type: Test > Components: redis >Reporter: Jens Deppe >Assignee: Jens Deppe >Priority: Major > Labels: pull-request-available > Fix For: 1.14.0 > > > Our native acceptance tests currently extend from the integration tests and > both classes have a {{@ClassRule}} that results in both a native (container) > instance and a Geode instance starting up. Mostly not a problem except for > {{PubSubNativeAcceptanceTest}} which was not testing against native redis. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8202) New option for serial gw sender threads start when receivers share ip and port
[ https://issues.apache.org/jira/browse/GEODE-8202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209416#comment-17209416 ] ASF GitHub Bot commented on GEODE-8202: --- alb3rtobr commented on pull request #5600: URL: https://github.com/apache/geode/pull/5600#issuecomment-704805752 @davebarnes97 you are right, I agree: using something like `--enforce-all-threads-same-receiver` is more appropriate to indicate what that option is doing, while the option I proposed indicates the "reason" for a different behavior on the thread start up process. What about `--enforce-threads-connect-same-receiver`? 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 > New option for serial gw sender threads start when receivers share ip and port > -- > > Key: GEODE-8202 > URL: https://issues.apache.org/jira/browse/GEODE-8202 > Project: Geode > Issue Type: Improvement >Reporter: Alberto Bustamante Reyes >Assignee: Alberto Bustamante Reyes >Priority: Major > Labels: pull-request-available > > RFC: > [https://cwiki.apache.org/confluence/display/GEODE/New+option+for+serial+gw+sender+dispatcher+threads+start|https://cwiki.apache.org/confluence/display/GEODE/New+option+for+serial+gw+sender+dispatcher+threads+start] -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8202) New option for serial gw sender threads start when receivers share ip and port
[ https://issues.apache.org/jira/browse/GEODE-8202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209625#comment-17209625 ] ASF GitHub Bot commented on GEODE-8202: --- davebarnes97 commented on pull request #5600: URL: https://github.com/apache/geode/pull/5600#issuecomment-705018026 > @davebarnes97 you are right, I agree: using something like `--enforce-all-threads-same-receiver` is more appropriate to indicate what that option is doing, while the option I proposed indicates the "reason" for a different behavior on the thread start up process. > What about `--enforce-threads-connect-same-receiver`? Thanks, Alberto -- that would satisfy my concern. Who else can we get to corroborate this change? I've added Barry as a reviewer in hopes that he'll render an opinion. 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 > New option for serial gw sender threads start when receivers share ip and port > -- > > Key: GEODE-8202 > URL: https://issues.apache.org/jira/browse/GEODE-8202 > Project: Geode > Issue Type: Improvement >Reporter: Alberto Bustamante Reyes >Assignee: Alberto Bustamante Reyes >Priority: Major > Labels: pull-request-available > > RFC: > [https://cwiki.apache.org/confluence/display/GEODE/New+option+for+serial+gw+sender+dispatcher+threads+start|https://cwiki.apache.org/confluence/display/GEODE/New+option+for+serial+gw+sender+dispatcher+threads+start] -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8202) New option for serial gw sender threads start when receivers share ip and port
[ https://issues.apache.org/jira/browse/GEODE-8202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209627#comment-17209627 ] ASF GitHub Bot commented on GEODE-8202: --- davebarnes97 edited a comment on pull request #5600: URL: https://github.com/apache/geode/pull/5600#issuecomment-705018026 > @davebarnes97 you are right, I agree: using something like `--enforce-all-threads-same-receiver` is more appropriate to indicate what that option is doing, while the option I proposed indicates the "reason" for a different behavior on the thread start up process. > What about `--enforce-threads-connect-same-receiver`? Thanks, Alberto -- that would satisfy my concern. Who else can we get to corroborate this change? I've added @boglesby as a reviewer in hopes that he'll render an opinion. 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 > New option for serial gw sender threads start when receivers share ip and port > -- > > Key: GEODE-8202 > URL: https://issues.apache.org/jira/browse/GEODE-8202 > Project: Geode > Issue Type: Improvement >Reporter: Alberto Bustamante Reyes >Assignee: Alberto Bustamante Reyes >Priority: Major > Labels: pull-request-available > > RFC: > [https://cwiki.apache.org/confluence/display/GEODE/New+option+for+serial+gw+sender+dispatcher+threads+start|https://cwiki.apache.org/confluence/display/GEODE/New+option+for+serial+gw+sender+dispatcher+threads+start] -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (GEODE-8580) Improper use of throw in new C++ test framework
Michael Martell created GEODE-8580: -- Summary: Improper use of throw in new C++ test framework Key: GEODE-8580 URL: https://issues.apache.org/jira/browse/GEODE-8580 Project: Geode Issue Type: Improvement Components: native client Reporter: Michael Martell The new C++ test framework (cppcache/integration/framework) throws pointers to exceptions. This is never a good idea. https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception Although you can catch pointers, it's not recommended practice. Note: The particular error I ran into was in GfshExecute::execute, where throw new GfshExecuteException("gfsh error", exit_code); was being used. This requires gtest to use: EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-8580) Improper use of throw in new C++ test framework
[ https://issues.apache.org/jira/browse/GEODE-8580?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Martell updated GEODE-8580: --- Description: The new C++ test framework (cppcache/integration/framework) throws pointers to exceptions. This is never a good idea. [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] Although you can catch pointers, it's not recommended practice. Note: The particular error I ran into was in GfshExecute::execute, where ``` throw new GfshExecuteException("gfsh error", exit_code); ``` was being used. This requires gtest to use: EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); was: The new C++ test framework (cppcache/integration/framework) throws pointers to exceptions. This is never a good idea. https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception Although you can catch pointers, it's not recommended practice. Note: The particular error I ran into was in GfshExecute::execute, where throw new GfshExecuteException("gfsh error", exit_code); was being used. This requires gtest to use: EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); > Improper use of throw in new C++ test framework > --- > > Key: GEODE-8580 > URL: https://issues.apache.org/jira/browse/GEODE-8580 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Michael Martell >Priority: Major > > The new C++ test framework (cppcache/integration/framework) throws pointers > to exceptions. This is never a good idea. > [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] > Although you can catch pointers, it's not recommended practice. > Note: The particular error I ran into was in GfshExecute::execute, where > ``` > throw new GfshExecuteException("gfsh error", exit_code); > ``` > was being used. This requires gtest to use: > EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (GEODE-8580) Improper use of throw in new C++ test framework
[ https://issues.apache.org/jira/browse/GEODE-8580?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Martell reassigned GEODE-8580: -- Assignee: Michael Martell Description: The new C++ test framework (cppcache/integration/framework) throws pointers to exceptions. This is never a good idea. [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] Although you can catch pointers, it's not recommended practice. Note: The particular error I ran into was in GfshExecute::execute, where throw new GfshExecuteException("gfsh error", exit_code); was being used. This requires gtest to use: EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); was: The new C++ test framework (cppcache/integration/framework) throws pointers to exceptions. This is never a good idea. [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] Although you can catch pointers, it's not recommended practice. Note: The particular error I ran into was in GfshExecute::execute, where ``` throw new GfshExecuteException("gfsh error", exit_code); ``` was being used. This requires gtest to use: EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); > Improper use of throw in new C++ test framework > --- > > Key: GEODE-8580 > URL: https://issues.apache.org/jira/browse/GEODE-8580 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Michael Martell >Assignee: Michael Martell >Priority: Major > > The new C++ test framework (cppcache/integration/framework) throws pointers > to exceptions. This is never a good idea. > [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] > Although you can catch pointers, it's not recommended practice. > Note: The particular error I ran into was in GfshExecute::execute, where > throw new GfshExecuteException("gfsh error", exit_code); > was being used. This requires gtest to use: > EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209654#comment-17209654 ] ASF GitHub Bot commented on GEODE-8512: --- mmartell commented on pull request #661: URL: https://github.com/apache/geode-native/pull/661#issuecomment-705045742 Mario, this looks like a nice piece of new functionality. Your new test has uncovered a bug in our new C++ test framework (https://issues.apache.org/jira/browse/GEODE-8580). Fixing that first. Once that's merged I think we can merge your PR. 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8579) Locators should stop waiting for locator-wait-time if all locators contacted
[ https://issues.apache.org/jira/browse/GEODE-8579?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209656#comment-17209656 ] ASF GitHub Bot commented on GEODE-8579: --- Bill commented on a change in pull request #5598: URL: https://github.com/apache/geode/pull/5598#discussion_r501145984 ## File path: geode-membership/src/integrationTest/java/org/apache/geode/distributed/internal/membership/gms/MembershipIntegrationTest.java ## @@ -272,6 +276,65 @@ public void secondMembershipPausesForLocatorWaitTime() stop(coordinatorLocator, lateJoiningLocator); } + @Test + public void locatorsStopWaitingForLocatorWaitTimeIfAllLocatorsContacted() + throws IOException, MemberStartupException, InterruptedException, TimeoutException, + ExecutionException { + +final Supplier executorServiceSupplier = +() -> LoggingExecutors.newCachedThreadPool("membership", false); + +int[] locatorPorts = AvailablePortHelper.getRandomAvailableTCPPorts(2); + +int locatorWaitTime = (int) Duration.ofMinutes(5).getSeconds(); +final MembershipConfig config = +createMembershipConfig(true, locatorWaitTime, locatorPorts[0], locatorPorts[1]); + +CompletableFuture> createMembership0 = +launchLocator(executorServiceSupplier, locatorPorts[0], config); + +// Assert that membership 0 is waiting for the other locator to start +Thread.sleep(5000); +assertThat(createMembership0.getNow(null)).isNull(); + +CompletableFuture> createMembership1 = +launchLocator(executorServiceSupplier, locatorPorts[1], config); + +// Make sure the members are created in less than the locator-wait-time +Membership membership0 = createMembership0.get(2, TimeUnit.MINUTES); +Membership membership1 = createMembership1.get(2, TimeUnit.MINUTES); + +// Make sure the members see each other in the view +assertThat(membership0.getView().getMembers()).hasSize(2); +assertThat(membership1.getView().getMembers()).hasSize(2); + } Review comment: Ok @upthewaterspout. After this PR merges I'll write a ticket to make this improvement. Thanks for trying it though! 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 > Locators should stop waiting for locator-wait-time if all locators contacted > > > Key: GEODE-8579 > URL: https://issues.apache.org/jira/browse/GEODE-8579 > Project: Geode > Issue Type: Improvement > Components: membership >Reporter: Dan Smith >Priority: Major > Labels: pull-request-available > > If locator-wait-time is set on one or more locators, the locators can > currently end up waiting for the entire locator-wait-time before starting up, > even if all locators can contact each other. > If the locators can all contact each other, they should start up right away > and not wait any longer, even if locator-wait-time is set. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8580) Improper use of throw in new C++ test framework
[ https://issues.apache.org/jira/browse/GEODE-8580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209679#comment-17209679 ] ASF GitHub Bot commented on GEODE-8580: --- mmartell opened a new pull request #670: URL: https://github.com/apache/geode-native/pull/670 This is a fix to the new C++ test framework. We were throwing pointers. 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 > Improper use of throw in new C++ test framework > --- > > Key: GEODE-8580 > URL: https://issues.apache.org/jira/browse/GEODE-8580 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Michael Martell >Assignee: Michael Martell >Priority: Major > > The new C++ test framework (cppcache/integration/framework) throws pointers > to exceptions. This is never a good idea. > [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] > Although you can catch pointers, it's not recommended practice. > Note: The particular error I ran into was in GfshExecute::execute, where > throw new GfshExecuteException("gfsh error", exit_code); > was being used. This requires gtest to use: > EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-8580) Improper use of throw in new C++ test framework
[ https://issues.apache.org/jira/browse/GEODE-8580?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated GEODE-8580: -- Labels: pull-request-available (was: ) > Improper use of throw in new C++ test framework > --- > > Key: GEODE-8580 > URL: https://issues.apache.org/jira/browse/GEODE-8580 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Michael Martell >Assignee: Michael Martell >Priority: Major > Labels: pull-request-available > > The new C++ test framework (cppcache/integration/framework) throws pointers > to exceptions. This is never a good idea. > [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] > Although you can catch pointers, it's not recommended practice. > Note: The particular error I ran into was in GfshExecute::execute, where > throw new GfshExecuteException("gfsh error", exit_code); > was being used. This requires gtest to use: > EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209683#comment-17209683 ] ASF GitHub Bot commented on GEODE-8129: --- mmartell merged pull request #658: URL: https://github.com/apache/geode-native/pull/658 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 > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209687#comment-17209687 ] ASF subversion and git services commented on GEODE-8129: Commit b496c163c62b165932ed8e90b30128a811a56aeb in geode-native's branch refs/heads/develop from Matthew Reddington [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=b496c16 ] GEODE-8129: A test that breaks and reestablishes the proxy connection. (#658) * GEODE-8129: Added a drop proxy test. * GEODE-8129: Corrected for Mike's review. * GEODE-8129: Test proves a put and get during a disruption. > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209692#comment-17209692 ] ASF subversion and git services commented on GEODE-8129: Commit b496c163c62b165932ed8e90b30128a811a56aeb in geode-native's branch refs/heads/develop from Matthew Reddington [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=b496c16 ] GEODE-8129: A test that breaks and reestablishes the proxy connection. (#658) * GEODE-8129: Added a drop proxy test. * GEODE-8129: Corrected for Mike's review. * GEODE-8129: Test proves a put and get during a disruption. > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209693#comment-17209693 ] ASF subversion and git services commented on GEODE-8129: Commit b496c163c62b165932ed8e90b30128a811a56aeb in geode-native's branch refs/heads/develop from Matthew Reddington [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=b496c16 ] GEODE-8129: A test that breaks and reestablishes the proxy connection. (#658) * GEODE-8129: Added a drop proxy test. * GEODE-8129: Corrected for Mike's review. * GEODE-8129: Test proves a put and get during a disruption. > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209690#comment-17209690 ] ASF subversion and git services commented on GEODE-8129: Commit b496c163c62b165932ed8e90b30128a811a56aeb in geode-native's branch refs/heads/develop from Matthew Reddington [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=b496c16 ] GEODE-8129: A test that breaks and reestablishes the proxy connection. (#658) * GEODE-8129: Added a drop proxy test. * GEODE-8129: Corrected for Mike's review. * GEODE-8129: Test proves a put and get during a disruption. > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209691#comment-17209691 ] ASF subversion and git services commented on GEODE-8129: Commit b496c163c62b165932ed8e90b30128a811a56aeb in geode-native's branch refs/heads/develop from Matthew Reddington [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=b496c16 ] GEODE-8129: A test that breaks and reestablishes the proxy connection. (#658) * GEODE-8129: Added a drop proxy test. * GEODE-8129: Corrected for Mike's review. * GEODE-8129: Test proves a put and get during a disruption. > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209689#comment-17209689 ] ASF subversion and git services commented on GEODE-8129: Commit b496c163c62b165932ed8e90b30128a811a56aeb in geode-native's branch refs/heads/develop from Matthew Reddington [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=b496c16 ] GEODE-8129: A test that breaks and reestablishes the proxy connection. (#658) * GEODE-8129: Added a drop proxy test. * GEODE-8129: Corrected for Mike's review. * GEODE-8129: Test proves a put and get during a disruption. > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209694#comment-17209694 ] ASF subversion and git services commented on GEODE-8129: Commit b496c163c62b165932ed8e90b30128a811a56aeb in geode-native's branch refs/heads/develop from Matthew Reddington [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=b496c16 ] GEODE-8129: A test that breaks and reestablishes the proxy connection. (#658) * GEODE-8129: Added a drop proxy test. * GEODE-8129: Corrected for Mike's review. * GEODE-8129: Test proves a put and get during a disruption. > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8129) Write SNI test that drops proxy and restarts proxy
[ https://issues.apache.org/jira/browse/GEODE-8129?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209688#comment-17209688 ] ASF subversion and git services commented on GEODE-8129: Commit b496c163c62b165932ed8e90b30128a811a56aeb in geode-native's branch refs/heads/develop from Matthew Reddington [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=b496c16 ] GEODE-8129: A test that breaks and reestablishes the proxy connection. (#658) * GEODE-8129: Added a drop proxy test. * GEODE-8129: Corrected for Mike's review. * GEODE-8129: Test proves a put and get during a disruption. > Write SNI test that drops proxy and restarts proxy > --- > > Key: GEODE-8129 > URL: https://issues.apache.org/jira/browse/GEODE-8129 > Project: Geode > Issue Type: Test > Components: native client >Reporter: Ernest Burghardt >Priority: Major > Labels: pull-request-available > > This test is similar to GEODE-8128 - only capability to parse `docker ps` and > store the hostPort in advance of dropping proxy, this allows the proxy to be > restarted with the same port mapping -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-7696) Remove unecessary catch block from GMSHealthMonitor.java
[ https://issues.apache.org/jira/browse/GEODE-7696?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Bill Burcham updated GEODE-7696: Description: former: {code:java} } catch (IllegalStateException \| GemFireConfigException e) { {code} current: {code:java} } catch (IllegalStateException e) { {code} we can let both bubble up... was: |former|} catch (IllegalStateException \| GemFireConfigException e) {| | current } catch (IllegalStateException e) { we can let both bubble up... > Remove unecessary catch block from GMSHealthMonitor.java > > > Key: GEODE-7696 > URL: https://issues.apache.org/jira/browse/GEODE-7696 > Project: Geode > Issue Type: Improvement > Components: membership >Reporter: Ernest Burghardt >Priority: Major > > former: > {code:java} > } catch (IllegalStateException \| GemFireConfigException e) { > {code} > current: > {code:java} > } catch (IllegalStateException e) { > {code} > we can let both bubble up... -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-7696) Remove unecessary catch block from GMSHealthMonitor.java
[ https://issues.apache.org/jira/browse/GEODE-7696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209699#comment-17209699 ] Bill Burcham commented on GEODE-7696: - When the ticket says "we can let both bubble up" is the ticket suggesting we remove the {{catch}} block for {{IllegalStateException}}? If so, what is the justification for that? Why is it ok to stop catching {{IllegalStateException}}? > Remove unecessary catch block from GMSHealthMonitor.java > > > Key: GEODE-7696 > URL: https://issues.apache.org/jira/browse/GEODE-7696 > Project: Geode > Issue Type: Improvement > Components: membership >Reporter: Ernest Burghardt >Priority: Major > > former: > {code:java} > } catch (IllegalStateException \| GemFireConfigException e) { > {code} > current: > {code:java} > } catch (IllegalStateException e) { > {code} > we can let both bubble up... -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8531) Coredump when removing an entry
[ https://issues.apache.org/jira/browse/GEODE-8531?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209713#comment-17209713 ] ASF GitHub Bot commented on GEODE-8531: --- mreddington commented on a change in pull request #667: URL: https://github.com/apache/geode-native/pull/667#discussion_r501184927 ## File path: cppcache/integration/test/RegisterKeysTest.cpp ## @@ -112,6 +114,51 @@ TEST(RegisterKeysTest, RegisterAllWithCachingRegion) { } } +TEST(RegisterKeysTest, RegisterAllWithConsistencyDisabled) { + Cluster cluster{LocatorCount{1}, ServerCount{1}}; + + cluster.start(); + + cluster.getGfsh() + .create() + .region() + .withName("region") + .withType("PARTITION") + .execute(); + + auto producer_cache = createTestCache(); + auto listener_cache = createTestCache(); + + auto producer_region = [&cluster](Cache& cache) { +auto poolFactory = cache.getPoolManager().createFactory(); +cluster.applyLocators(poolFactory); +poolFactory.create("default"); +return setupProxyRegion(cache); + }(producer_cache); + + auto listener_region = [&cluster](Cache& cache) { +auto poolFactory = +cache.getPoolManager().createFactory().setSubscriptionEnabled(true); +cluster.applyLocators(poolFactory); +poolFactory.create("default"); +auto region = setupCachingProxyRegion(cache, false); +region->registerAllKeys(); +return region; + }(listener_cache); + + ASSERT_FALSE(listener_region->containsValueForKey("one")); + + producer_region->put("one", std::make_shared(1)); + std::this_thread::sleep_for(std::chrono::seconds(5)); + + ASSERT_TRUE(listener_region->containsValueForKey("one")); + + producer_region->destroy("one"); + std::this_thread::sleep_for(std::chrono::seconds(5)); Review comment: The basis for my doubt about the timeout is because I believe `containsValueForKey` is a server query (the method does some parameter checking, and then it calls `containsValueForKey_remote`), so there's no point in waiting, there is no state change in the client you need to wait for. The destroy is a blocking call and the server should have completed the request and all server-side effects before returning a response and thus unblocking the client call. So you have a producer region and a proxy region to that, both on the same server instance, I don't think consistency is going to be an issue. This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Coredump when removing an entry > --- > > Key: GEODE-8531 > URL: https://issues.apache.org/jira/browse/GEODE-8531 > Project: Geode > Issue Type: Bug > Components: native client >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Major > Labels: pull-request-available > Attachments: notifications-no-massif.log > > > The scenario is the following: > *HAVING* a configured concurrency-checks-enabled=false in the > client-cache.xml for a region > *HAVING* a configured subscription-notification for the pool on which the > region is defined > *HAVING* regsitered interest on all the keys of this region, values included > *WHEN* a LOCAL_DESTROY notification arrives and therefore > {color:#4c9aff}MapSegment::remove{color}{color:#172b4d} is called{color} > {color:#172b4d}*THEN* the application crashes, claiming that the variable > entry is a nullptr.{color} > > This is the segmentation report: > {code:java} > [debug 2020/09/24 17:21:07.263036 CEST DESKTOP-3SQUK3P:586546 > 140013383710464] Region::destroy: region [/region] destroying key > [entry-152150] > Segmentation fault > *** Segmentation fault > Register dump: RAX: RBX: RCX: > > RDX: RSI: 7f57580008e0 RDI: 7f5767ffe670 > RBP: 7f5767ffe6c0 R8 : 7f5758000d70 R9 : 563da49f0ac0 > R10: 000c R11: 7f57815a2058 R12: 563da6971a48 > R13: 563da696dbd0 R14: R15: 7ffd06db85a0 > RSP: 7f5767ffe610 RIP: 7f578159ac47 EFLAGS: 00010202 CS: 0033 > FS: GS: Trap: 000e Error: 0004 OldMask: > CR2: FPUCW: 037f FPUSW: TAG: 7f57 > RIP: 80b37f70 RDP: ST(0) ST(1) > > ST(2) ST(3) > ST(4) ST(5) c000 > ST(6) c000 ST(7) e000 e000
[jira] [Commented] (GEODE-8565) c++ client tries to connect to down server until IO error is thrown
[ https://issues.apache.org/jira/browse/GEODE-8565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209716#comment-17209716 ] ASF GitHub Bot commented on GEODE-8565: --- mreddington commented on a change in pull request #662: URL: https://github.com/apache/geode-native/pull/662#discussion_r501187346 ## File path: cppcache/integration/test/PartitionRegionOpsTest.cpp ## @@ -46,11 +48,21 @@ using apache::geode::client::RegionShortcut; using std::chrono::minutes; +std::string getClientLogName() { Review comment: @alb3rtobr I'm probably missing something. Streams are mostly brilliant until you start mucking with their details. I'm glad you tried it. I think I'll figure this one out and then make a separate ticket for it. We have a lot of testing that would benefit from internal log redirection. Thanks, mate. This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > c++ client tries to connect to down server until IO error is thrown > --- > > Key: GEODE-8565 > URL: https://issues.apache.org/jira/browse/GEODE-8565 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Alberto Bustamante Reyes >Assignee: Alberto Bustamante Reyes >Priority: Major > Labels: pull-request-available > > This ticket is an improvement over GEODE-8231: > {quote}If a C++ client connected to a cluster is sending operations to a > partitioned region and one of the server goes down, the client keeps trying > to send operations to the down server. This can be observed in the logs by a > continuous flow of lines containing: "IO error in handshake with endpoint..." > {quote} > After that improvement, the c++ client removes the metadata info of the > failing server once the "IO error in handshake" is received. > But it has been observed that before that error is received, "timeout error" > can be returned. So the client will try to reconnect until the "IO error in > handshake" is received. > This ticket aims to extend the GEODE-8231 solution so the client removes the > server metadata information when a timeout is received. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8565) c++ client tries to connect to down server until IO error is thrown
[ https://issues.apache.org/jira/browse/GEODE-8565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209722#comment-17209722 ] ASF GitHub Bot commented on GEODE-8565: --- alb3rtobr commented on a change in pull request #662: URL: https://github.com/apache/geode-native/pull/662#discussion_r501190200 ## File path: cppcache/integration/test/PartitionRegionOpsTest.cpp ## @@ -46,11 +48,21 @@ using apache::geode::client::RegionShortcut; using std::chrono::minutes; +std::string getClientLogName() { Review comment: @mreddington No problem, thanks for the suggestion anyway. Im going to revert the last commit then. This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > c++ client tries to connect to down server until IO error is thrown > --- > > Key: GEODE-8565 > URL: https://issues.apache.org/jira/browse/GEODE-8565 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Alberto Bustamante Reyes >Assignee: Alberto Bustamante Reyes >Priority: Major > Labels: pull-request-available > > This ticket is an improvement over GEODE-8231: > {quote}If a C++ client connected to a cluster is sending operations to a > partitioned region and one of the server goes down, the client keeps trying > to send operations to the down server. This can be observed in the logs by a > continuous flow of lines containing: "IO error in handshake with endpoint..." > {quote} > After that improvement, the c++ client removes the metadata info of the > failing server once the "IO error in handshake" is received. > But it has been observed that before that error is received, "timeout error" > can be returned. So the client will try to reconnect until the "IO error in > handshake" is received. > This ticket aims to extend the GEODE-8231 solution so the client removes the > server metadata information when a timeout is received. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8565) c++ client tries to connect to down server until IO error is thrown
[ https://issues.apache.org/jira/browse/GEODE-8565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209726#comment-17209726 ] ASF GitHub Bot commented on GEODE-8565: --- alb3rtobr commented on a change in pull request #662: URL: https://github.com/apache/geode-native/pull/662#discussion_r501194315 ## File path: cppcache/integration/test/PartitionRegionOpsTest.cpp ## @@ -46,11 +48,21 @@ using apache::geode::client::RegionShortcut; using std::chrono::minutes; +std::string getClientLogName() { Review comment: @mreddington Please remember to approve the PR if its fine for you :) This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > c++ client tries to connect to down server until IO error is thrown > --- > > Key: GEODE-8565 > URL: https://issues.apache.org/jira/browse/GEODE-8565 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Alberto Bustamante Reyes >Assignee: Alberto Bustamante Reyes >Priority: Major > Labels: pull-request-available > > This ticket is an improvement over GEODE-8231: > {quote}If a C++ client connected to a cluster is sending operations to a > partitioned region and one of the server goes down, the client keeps trying > to send operations to the down server. This can be observed in the logs by a > continuous flow of lines containing: "IO error in handshake with endpoint..." > {quote} > After that improvement, the c++ client removes the metadata info of the > failing server once the "IO error in handshake" is received. > But it has been observed that before that error is received, "timeout error" > can be returned. So the client will try to reconnect until the "IO error in > handshake" is received. > This ticket aims to extend the GEODE-8231 solution so the client removes the > server metadata information when a timeout is received. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-7948) LocatorUDPSecurityDUnitTest > testStartTwoLocatorsWithMultiKeystoreSSL FAILED
[ https://issues.apache.org/jira/browse/GEODE-7948?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209736#comment-17209736 ] Geode Integration commented on GEODE-7948: -- Seen in [DistributedTestOpenJDK11 #506|https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK11/builds/506] ... see [test results|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0397/test-results/distributedTest/1602038463/] or download [artifacts|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0397/test-artifacts/1602038463/distributedtestfiles-OpenJDK11-1.14.0-build.0397.tgz]. > LocatorUDPSecurityDUnitTest > testStartTwoLocatorsWithMultiKeystoreSSL FAILED > - > > Key: GEODE-7948 > URL: https://issues.apache.org/jira/browse/GEODE-7948 > Project: Geode > Issue Type: Bug > Components: ci >Affects Versions: 1.13.0 >Reporter: Ernest Burghardt >Priority: Major > Labels: flaky > > > {code:java} > java.io.EOFException: Locator at HostAndPort > [socketInetAddress=2c3140cf3e20:29021] did not respond. This is normal if the > locator was shutdown. If it wasn't check its log for exceptions. > at > org.apache.geode.distributed.internal.tcpserver.TcpClient.requestToServer(TcpClient.java:201) > at > org.apache.geode.distributed.internal.membership.gms.membership.GMSJoinLeave.findCoordinator(GMSJoinLeave.java:1145) > at > org.apache.geode.distributed.internal.membership.gms.membership.GMSJoinLeave.join(GMSJoinLeave.java:331) > at > org.apache.geode.distributed.internal.membership.gms.GMSMembership.join(GMSMembership.java:573) > at > org.apache.geode.distributed.internal.membership.gms.GMSMembership.access$1300(GMSMembership.java:71) > at > org.apache.geode.distributed.internal.membership.gms.GMSMembership$ManagerImpl.joinDistributedSystem(GMSMembership.java:1972) > at > org.apache.geode.distributed.internal.membership.gms.Services.start(Services.java:242) > at > org.apache.geode.distributed.internal.membership.gms.GMSMembership.start(GMSMembership.java:1851) > at > org.apache.geode.distributed.internal.DistributionImpl.start(DistributionImpl.java:171) > at > org.apache.geode.distributed.internal.DistributionImpl.createDistribution(DistributionImpl.java:222) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:464) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.(ClusterDistributionManager.java:497) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:326) > at > org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:779) > at > org.apache.geode.distributed.internal.InternalDistributedSystem.access$200(InternalDistributedSystem.java:135) > at > org.apache.geode.distributed.internal.InternalDistributedSystem$Builder.build(InternalDistributedSystem.java:3033) > at > org.apache.geode.distributed.internal.InternalDistributedSystem.connectInternal(InternalDistributedSystem.java:290) > at > org.apache.geode.distributed.internal.InternalLocator.startDistributedSystem(InternalLocator.java:743) > at > org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:388) > at > org.apache.geode.distributed.internal.InternalLocator.startLocator(InternalLocator.java:338) > at org.apache.geode.distributed.Locator.startLocator(Locator.java:252) > at > org.apache.geode.distributed.Locator.startLocatorAndDS(Locator.java:139) > at > org.apache.geode.distributed.LocatorDUnitTest.startLocatorWithPortAndProperties(LocatorDUnitTest.java:1507) > at > org.apache.geode.distributed.LocatorDUnitTest.lambda$startVerifyAndStopLocator$e21733f2$1(LocatorDUnitTest.java:1539) > at > org.apache.geode.test.dunit.internal.IdentifiableRunnable.run(IdentifiableRunnable.java:41) > {code} > https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/DistributedTestOpenJDK8/builds/9 -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8531) Coredump when removing an entry
[ https://issues.apache.org/jira/browse/GEODE-8531?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209744#comment-17209744 ] ASF GitHub Bot commented on GEODE-8531: --- gaussianrecurrence commented on a change in pull request #667: URL: https://github.com/apache/geode-native/pull/667#discussion_r501209399 ## File path: cppcache/integration/test/RegisterKeysTest.cpp ## @@ -112,6 +114,51 @@ TEST(RegisterKeysTest, RegisterAllWithCachingRegion) { } } +TEST(RegisterKeysTest, RegisterAllWithConsistencyDisabled) { + Cluster cluster{LocatorCount{1}, ServerCount{1}}; + + cluster.start(); + + cluster.getGfsh() + .create() + .region() + .withName("region") + .withType("PARTITION") + .execute(); + + auto producer_cache = createTestCache(); + auto listener_cache = createTestCache(); + + auto producer_region = [&cluster](Cache& cache) { +auto poolFactory = cache.getPoolManager().createFactory(); +cluster.applyLocators(poolFactory); +poolFactory.create("default"); +return setupProxyRegion(cache); + }(producer_cache); + + auto listener_region = [&cluster](Cache& cache) { +auto poolFactory = +cache.getPoolManager().createFactory().setSubscriptionEnabled(true); +cluster.applyLocators(poolFactory); +poolFactory.create("default"); +auto region = setupCachingProxyRegion(cache, false); +region->registerAllKeys(); +return region; + }(listener_cache); + + ASSERT_FALSE(listener_region->containsValueForKey("one")); + + producer_region->put("one", std::make_shared(1)); + std::this_thread::sleep_for(std::chrono::seconds(5)); + + ASSERT_TRUE(listener_region->containsValueForKey("one")); + + producer_region->destroy("one"); + std::this_thread::sleep_for(std::chrono::seconds(5)); Review comment: Oh I see the problem. You see, using the client without region consistency is seriously broken because I've seen several coredumps for the following scenarios: 1. Putting a key into a region using the NC. 2. Destroying a key into a region using the NC. 3. Receiving a LOCAL_DESTROY notification in the NC. The fix for the coredump in this PR is the one for the third case, so that's why I wanted to do it by using notifications. Thing is I was not aware that containsValueForKey queries the server. Therefore what about setting up a cachelistener for the 'listener_region' which actually is a Google Mock and make a call expectation on the afterDestroy function of the catch listener using an approach similar to this: https://stackoverflow.com/questions/10767131/expecting-googlemock-calls-from-another-thread? The test flow would be: 1. Setup producer_region without cache and subscription to notifications. 2. Setup listener_region with cache, subscription notifications and a cache listener which actually is a google mock. 3. Call registerAllKeys on listener_region. 4. Setup an EXPECT_CALL for the cache listener afterDestroy method, specifying the sync barrier action to occur upon call. 5. Make a put in producer_region 6. Make a destroy on key same key that on step 5 for producer region. 7. Wait for (1, 2 or 5 seconds?) for the semaphore. The test passes only if wait in the last step does not time out. What do 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 > Coredump when removing an entry > --- > > Key: GEODE-8531 > URL: https://issues.apache.org/jira/browse/GEODE-8531 > Project: Geode > Issue Type: Bug > Components: native client >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Major > Labels: pull-request-available > Attachments: notifications-no-massif.log > > > The scenario is the following: > *HAVING* a configured concurrency-checks-enabled=false in the > client-cache.xml for a region > *HAVING* a configured subscription-notification for the pool on which the > region is defined > *HAVING* regsitered interest on all the keys of this region, values included > *WHEN* a LOCAL_DESTROY notification arrives and therefore > {color:#4c9aff}MapSegment::remove{color}{color:#172b4d} is called{color} > {color:#172b4d}*THEN* the application crashes, claiming that the variable > entry is a nullptr.{color} > > This is the segmentation report: > {code:java} > [debug 2020/09/24 17:21:07.263036 CEST DESKTOP-3SQUK3P:586546 > 140013383710464] Region::destroy: region [/region] destroying key > [entry-152150] > Segmentation fault
[jira] [Commented] (GEODE-8574) ClassCastException when hitting members REST endpoint
[ https://issues.apache.org/jira/browse/GEODE-8574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209745#comment-17209745 ] ASF GitHub Bot commented on GEODE-8574: --- jinmeiliao merged pull request #5596: URL: https://github.com/apache/geode/pull/5596 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 > ClassCastException when hitting members REST endpoint > - > > Key: GEODE-8574 > URL: https://issues.apache.org/jira/browse/GEODE-8574 > Project: Geode > Issue Type: Improvement > Components: rest (admin) >Affects Versions: 1.13.0 >Reporter: Jason Huynh >Assignee: Jinmei Liao >Priority: Major > Labels: GeodeOperationAPI, pull-request-available > > This might be similar to https://issues.apache.org/jira/browse/GEODE-8078 > We see a FunctionInvocationTargetException when trying to use the rest > endpoint while servers are restarting/recovering > [error 2020/10/01 21:49:57.381 GMT tid=0x46] class > org.apache.geode.cache.execute.FunctionInvocationTargetException cannot be > cast to class org.apache.geode.management.runtime.RuntimeInfo > (org.apache.geode.cache.execute.FunctionInvocationTargetException and > org.apache.geode.management.runtime.RuntimeInfo are in unnamed module of > loader 'app') > java.lang.ClassCastException: class > org.apache.geode.cache.execute.FunctionInvocationTargetException cannot be > cast to class org.apache.geode.management.runtime.RuntimeInfo > (org.apache.geode.cache.execute.FunctionInvocationTargetException and > org.apache.geode.management.runtime.RuntimeInfo are in unnamed module of > loader 'app') > at > org.apache.geode.management.internal.api.LocatorClusterManagementService.list(LocatorClusterManagementService.java:459) > at > org.apache.geode.management.internal.api.LocatorClusterManagementService.get(LocatorClusterManagementService.java:476) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController.getMember(MemberManagementController.java:50) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController$$FastClassBySpringCGLIB$$3634e452.invoke() > at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771) > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) > at > org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:61) > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) > at > org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController$$EnhancerBySpringCGLIB$$ef2756b6.getMember() > at jdk.internal.reflect.GeneratedMethodAccessor237.invoke(Unknown Source) > at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:566) -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (GEODE-8574) ClassCastException when hitting members REST endpoint
[ https://issues.apache.org/jira/browse/GEODE-8574?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jinmei Liao resolved GEODE-8574. Fix Version/s: 1.14.0 Resolution: Fixed > ClassCastException when hitting members REST endpoint > - > > Key: GEODE-8574 > URL: https://issues.apache.org/jira/browse/GEODE-8574 > Project: Geode > Issue Type: Improvement > Components: rest (admin) >Affects Versions: 1.13.0 >Reporter: Jason Huynh >Assignee: Jinmei Liao >Priority: Major > Labels: GeodeOperationAPI, pull-request-available > Fix For: 1.14.0 > > > This might be similar to https://issues.apache.org/jira/browse/GEODE-8078 > We see a FunctionInvocationTargetException when trying to use the rest > endpoint while servers are restarting/recovering > [error 2020/10/01 21:49:57.381 GMT tid=0x46] class > org.apache.geode.cache.execute.FunctionInvocationTargetException cannot be > cast to class org.apache.geode.management.runtime.RuntimeInfo > (org.apache.geode.cache.execute.FunctionInvocationTargetException and > org.apache.geode.management.runtime.RuntimeInfo are in unnamed module of > loader 'app') > java.lang.ClassCastException: class > org.apache.geode.cache.execute.FunctionInvocationTargetException cannot be > cast to class org.apache.geode.management.runtime.RuntimeInfo > (org.apache.geode.cache.execute.FunctionInvocationTargetException and > org.apache.geode.management.runtime.RuntimeInfo are in unnamed module of > loader 'app') > at > org.apache.geode.management.internal.api.LocatorClusterManagementService.list(LocatorClusterManagementService.java:459) > at > org.apache.geode.management.internal.api.LocatorClusterManagementService.get(LocatorClusterManagementService.java:476) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController.getMember(MemberManagementController.java:50) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController$$FastClassBySpringCGLIB$$3634e452.invoke() > at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771) > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) > at > org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:61) > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) > at > org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController$$EnhancerBySpringCGLIB$$ef2756b6.getMember() > at jdk.internal.reflect.GeneratedMethodAccessor237.invoke(Unknown Source) > at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:566) -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8574) ClassCastException when hitting members REST endpoint
[ https://issues.apache.org/jira/browse/GEODE-8574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209746#comment-17209746 ] ASF subversion and git services commented on GEODE-8574: Commit 73f6783b07f1151c1617978fb57822ade5b71414 in geode's branch refs/heads/develop from Jinmei Liao [ https://gitbox.apache.org/repos/asf?p=geode.git;h=73f6783 ] GEODE-8574: ClusterManagementService should not throw ClassCastExcept… (#5596) > ClassCastException when hitting members REST endpoint > - > > Key: GEODE-8574 > URL: https://issues.apache.org/jira/browse/GEODE-8574 > Project: Geode > Issue Type: Improvement > Components: rest (admin) >Affects Versions: 1.13.0 >Reporter: Jason Huynh >Assignee: Jinmei Liao >Priority: Major > Labels: GeodeOperationAPI, pull-request-available > Fix For: 1.14.0 > > > This might be similar to https://issues.apache.org/jira/browse/GEODE-8078 > We see a FunctionInvocationTargetException when trying to use the rest > endpoint while servers are restarting/recovering > [error 2020/10/01 21:49:57.381 GMT tid=0x46] class > org.apache.geode.cache.execute.FunctionInvocationTargetException cannot be > cast to class org.apache.geode.management.runtime.RuntimeInfo > (org.apache.geode.cache.execute.FunctionInvocationTargetException and > org.apache.geode.management.runtime.RuntimeInfo are in unnamed module of > loader 'app') > java.lang.ClassCastException: class > org.apache.geode.cache.execute.FunctionInvocationTargetException cannot be > cast to class org.apache.geode.management.runtime.RuntimeInfo > (org.apache.geode.cache.execute.FunctionInvocationTargetException and > org.apache.geode.management.runtime.RuntimeInfo are in unnamed module of > loader 'app') > at > org.apache.geode.management.internal.api.LocatorClusterManagementService.list(LocatorClusterManagementService.java:459) > at > org.apache.geode.management.internal.api.LocatorClusterManagementService.get(LocatorClusterManagementService.java:476) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController.getMember(MemberManagementController.java:50) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController$$FastClassBySpringCGLIB$$3634e452.invoke() > at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771) > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) > at > org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:61) > at > org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) > at > org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749) > at > org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691) > at > org.apache.geode.management.internal.rest.controllers.MemberManagementController$$EnhancerBySpringCGLIB$$ef2756b6.getMember() > at jdk.internal.reflect.GeneratedMethodAccessor237.invoke(Unknown Source) > at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:566) -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209748#comment-17209748 ] ASF GitHub Bot commented on GEODE-8512: --- gaussianrecurrence commented on pull request #661: URL: https://github.com/apache/geode-native/pull/661#issuecomment-705105373 Thanks for the update :) 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8565) c++ client tries to connect to down server until IO error is thrown
[ https://issues.apache.org/jira/browse/GEODE-8565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209749#comment-17209749 ] ASF GitHub Bot commented on GEODE-8565: --- pdxcodemonkey commented on pull request #662: URL: https://github.com/apache/geode-native/pull/662#issuecomment-705105447 This has build issues on Windows: ``` C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(106): error C2079: 'previousTestLog' uses undefined class 'std::basic_ifstream>' [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(106): error C2440: 'initializing': cannot convert from 'std::string' to 'int' [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(106): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(115): error C2079: 'testLog' uses undefined class 'std::basic_ifstream>' [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(115): error C2440: 'initializing': cannot convert from 'std::string' to 'int' [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(115): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(133): error C2672: 'getline': no matching overloaded function found [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(133): error C2784: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &,std::basic_string<_Elem,_Traits,_Alloc> &)': could not deduce template argument for 'std::basic_istream<_Elem,_Traits> &' from 'int' [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\string(160): note: see declaration of 'std::getline' C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(133): error C2780: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &,std::basic_string<_Elem,_Traits,_Alloc> &,const _Elem)': expects 3 arguments - 2 provided [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\string(149): note: see declaration of 'std::getline' C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(133): error C2784: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &&,std::basic_string<_Elem,_Traits,_Alloc> &)': could not deduce template argument for 'std::basic_istream<_Elem,_Traits> &&' from 'int' [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\string(129): note: see declaration of 'std::getline' C:\nativeclient\cppcache\integration\test\PartitionRegionOpsTest.cpp(133): error C2780: 'std::basic_istream<_Elem,_Traits> &std::getline(std::basic_istream<_Elem,_Traits> &&,std::basic_string<_Elem,_Traits,_Alloc> &,const _Elem)': expects 3 arguments - 2 provided [C:\build\cppcache\integration\test\cpp-integration-test.vcxproj] C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include\string(76): note: see declaration of 'std::getline' ``` This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > c++ client tries to connect to down server until IO error is thrown > --- > > Key: GEODE-8565 > URL: https://issues.apache.org/jira/browse/GEODE-8565 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Alberto Bustamante Reyes >Assignee: Alberto Bustamante Reyes >Priority: Major > Labels: pull-request-available > > This ticket is an improvement over GEODE-8231: > {quote}If a C++ client connected to a cluster is sending operations to a > partitioned region and one of the server goes down, the c
[jira] [Commented] (GEODE-8580) Improper use of throw in new C++ test framework
[ https://issues.apache.org/jira/browse/GEODE-8580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209785#comment-17209785 ] ASF GitHub Bot commented on GEODE-8580: --- codecov-io commented on pull request #670: URL: https://github.com/apache/geode-native/pull/670#issuecomment-705137350 # [Codecov](https://codecov.io/gh/apache/geode-native/pull/670?src=pr&el=h1) Report > :exclamation: No coverage uploaded for pull request base (`develop@3ae0f32`). [Click here to learn what that means](https://docs.codecov.io/docs/error-reference#section-missing-base-commit). > The diff coverage is `n/a`. [](https://codecov.io/gh/apache/geode-native/pull/670?src=pr&el=tree) ```diff @@Coverage Diff @@ ## develop #670 +/- ## == Coverage ? 74.26% == Files ? 644 Lines ?51131 Branches ?0 == Hits ?37971 Misses ?13160 Partials ?0 ``` -- [Continue to review full report at Codecov](https://codecov.io/gh/apache/geode-native/pull/670?src=pr&el=continue). > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta) > `Δ = absolute (impact)`, `ø = not affected`, `? = missing data` > Powered by [Codecov](https://codecov.io/gh/apache/geode-native/pull/670?src=pr&el=footer). Last update [3ae0f32...4b85e17](https://codecov.io/gh/apache/geode-native/pull/670?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments). This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Improper use of throw in new C++ test framework > --- > > Key: GEODE-8580 > URL: https://issues.apache.org/jira/browse/GEODE-8580 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Michael Martell >Assignee: Michael Martell >Priority: Major > Labels: pull-request-available > > The new C++ test framework (cppcache/integration/framework) throws pointers > to exceptions. This is never a good idea. > [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] > Although you can catch pointers, it's not recommended practice. > Note: The particular error I ran into was in GfshExecute::execute, where > throw new GfshExecuteException("gfsh error", exit_code); > was being used. This requires gtest to use: > EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8517) GatewaySenderEventImpl's 2 new attributes were introduced in 1.14 not 1.13
[ https://issues.apache.org/jira/browse/GEODE-8517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209790#comment-17209790 ] ASF GitHub Bot commented on GEODE-8517: --- jchen21 commented on a change in pull request #5530: URL: https://github.com/apache/geode/pull/5530#discussion_r501251099 ## File path: geode-core/src/main/java/org/apache/geode/internal/cache/wan/GatewaySenderEventImpl.java ## @@ -710,7 +710,7 @@ public int getDSFID() { @Override public void toData(DataOutput out, SerializationContext context) throws IOException { -toDataPre_GEODE_1_13_0_0(out, context); +toDataPre_GEODE_1_14_0_0(out, context); boolean hasTransaction = this.transactionId != null; Review comment: There is no need for condition check here. The appropriate version of `toData()` is invoked by `DSFIDSerializerImpl.invokeToData()` and `InternalDataSerializer.invokeToData()`. Similarly, there is no need from condition check in `fromData()`. 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 > GatewaySenderEventImpl's 2 new attributes were introduced in 1.14 not 1.13 > -- > > Key: GEODE-8517 > URL: https://issues.apache.org/jira/browse/GEODE-8517 > Project: Geode > Issue Type: Bug > Components: serialization >Affects Versions: 1.14.0 >Reporter: Xiaojian Zhou >Assignee: Xiaojian Zhou >Priority: Major > Labels: GeodeOperationAPI, pull-request-available > > GEODE-7971 introduced 2 new attributes isLastEventInTransaction and > transactionId. At that time, the in-coming release was 1.13. So the > GatewaySenderEventImpl specified GEODE_1_13_0 for the code changes. However, > due to the release schedule change, the 2 attributes are actually introduced > in 1.14. The 1.13 does not have them. > So rollingUpgrade from 1.13 to 1.14 for PARALLEL_GATEWAY_SENDER_QUEUE region > with GatewaySenderEventImpl will encounter serialization issue. This issue > will only be triggered in TX use case. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209798#comment-17209798 ] ASF GitHub Bot commented on GEODE-8512: --- pivotal-jbarrett commented on a change in pull request #661: URL: https://github.com/apache/geode-native/pull/661#discussion_r501253554 ## File path: cppcache/src/PdxType.cpp ## @@ -53,9 +54,13 @@ PdxType::PdxType(PdxTypeRegistry& pdxTypeRegistry, m_isVarLenFieldAdded(false), m_remoteToLocalFieldMap(nullptr), m_localToRemoteFieldMap(nullptr), - m_noJavaClass(false), + m_noJavaClass(!expectDomainClass), Review comment: Let's invert the member variable to be positive and reflect the usage. So if it is the "expect domain class" member now let's rename it so. ## File path: cppcache/src/Cache.cpp ## @@ -153,7 +153,12 @@ LogLevel Cache::getLogLevel() { return Log::logLevel(); } PdxInstanceFactory Cache::createPdxInstanceFactory( const std::string& className) const { - return m_cacheImpl->createPdxInstanceFactory(className); + return createPdxInstanceFactory(className, true); Review comment: Why does this default to `true`, wouldn't it have been implicitly `false` perviously? 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209802#comment-17209802 ] ASF GitHub Bot commented on GEODE-8512: --- pivotal-jbarrett commented on a change in pull request #661: URL: https://github.com/apache/geode-native/pull/661#discussion_r501255601 ## File path: cppcache/integration/test/PdxJsonTypeTest.cpp ## @@ -68,6 +68,32 @@ std::shared_ptr setupRegion(Cache& cache) { return region; } +TEST(PdxJsonTypeTest, testGfshQueryJsonInstances) { + Cluster cluster{LocatorCount{1}, ServerCount{1}}; + cluster.start(); + + auto& gfsh = cluster.getGfsh(); + gfsh.create().region().withName("region").withType("REPLICATE").execute(); + + auto cache = cluster.createCache(); + auto region = setupRegion(cache); + const std::string query_stmt{"SELECT * FROM /region"}; + + region->put("non-java-domain-class-entry", + cache.createPdxInstanceFactory(gemfireJsonClassName, false) + .writeString("foo", "bar") + .create()); + + EXPECT_NO_THROW(gfsh.query(query_stmt).execute()); Review comment: Can we really only test this via `gfsh`? What about writing a Java function to deploy and execute. That would have fewer moving parts and no output text to parse. 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8517) GatewaySenderEventImpl's 2 new attributes were introduced in 1.14 not 1.13
[ https://issues.apache.org/jira/browse/GEODE-8517?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209805#comment-17209805 ] ASF GitHub Bot commented on GEODE-8517: --- jchen21 commented on a change in pull request #5530: URL: https://github.com/apache/geode/pull/5530#discussion_r501259365 ## File path: geode-core/src/main/java/org/apache/geode/internal/cache/wan/GatewaySenderEventImpl.java ## @@ -754,8 +754,8 @@ protected void serializeKey(DataOutput out, @Override public void fromData(DataInput in, DeserializationContext context) throws IOException, ClassNotFoundException { -fromDataPre_GEODE_1_13_0_0(in, context); -if (version >= KnownVersion.GEODE_1_13_0.ordinal()) { +fromDataPre_GEODE_1_14_0_0(in, context); +if (version >= KnownVersion.GEODE_1_14_0.ordinal()) { Review comment: There is no need for condition check here. The appropriate version of `fromData()` is invoked by `DSFIDSerializerImpl.invokeFromData()` and `InternalDataSerializer.invokeFromData()`. For older versions, it will not invoke `fromData()`. Instead, it will invoke `fromDataPre_GEODE_1_9_0_0` or `fromDataPre_GEODE_1_14_0_0` depending on the version from `DataInput` or `DeserializationContext`. 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 > GatewaySenderEventImpl's 2 new attributes were introduced in 1.14 not 1.13 > -- > > Key: GEODE-8517 > URL: https://issues.apache.org/jira/browse/GEODE-8517 > Project: Geode > Issue Type: Bug > Components: serialization >Affects Versions: 1.14.0 >Reporter: Xiaojian Zhou >Assignee: Xiaojian Zhou >Priority: Major > Labels: GeodeOperationAPI, pull-request-available > > GEODE-7971 introduced 2 new attributes isLastEventInTransaction and > transactionId. At that time, the in-coming release was 1.13. So the > GatewaySenderEventImpl specified GEODE_1_13_0 for the code changes. However, > due to the release schedule change, the 2 attributes are actually introduced > in 1.14. The 1.13 does not have them. > So rollingUpgrade from 1.13 to 1.14 for PARALLEL_GATEWAY_SENDER_QUEUE region > with GatewaySenderEventImpl will encounter serialization issue. This issue > will only be triggered in TX use case. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8580) Improper use of throw in new C++ test framework
[ https://issues.apache.org/jira/browse/GEODE-8580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209808#comment-17209808 ] ASF GitHub Bot commented on GEODE-8580: --- pdxcodemonkey merged pull request #670: URL: https://github.com/apache/geode-native/pull/670 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 > Improper use of throw in new C++ test framework > --- > > Key: GEODE-8580 > URL: https://issues.apache.org/jira/browse/GEODE-8580 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Michael Martell >Assignee: Michael Martell >Priority: Major > Labels: pull-request-available > > The new C++ test framework (cppcache/integration/framework) throws pointers > to exceptions. This is never a good idea. > [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] > Although you can catch pointers, it's not recommended practice. > Note: The particular error I ran into was in GfshExecute::execute, where > throw new GfshExecuteException("gfsh error", exit_code); > was being used. This requires gtest to use: > EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8580) Improper use of throw in new C++ test framework
[ https://issues.apache.org/jira/browse/GEODE-8580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209810#comment-17209810 ] ASF subversion and git services commented on GEODE-8580: Commit e03085d14f71aa4a44dfc78dd71f2e01280ec922 in geode-native's branch refs/heads/develop from Michael Martell [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=e03085d ] GEODE-8580: Don't throw pointers in GfshExecute (#670) > Improper use of throw in new C++ test framework > --- > > Key: GEODE-8580 > URL: https://issues.apache.org/jira/browse/GEODE-8580 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Michael Martell >Assignee: Michael Martell >Priority: Major > Labels: pull-request-available > > The new C++ test framework (cppcache/integration/framework) throws pointers > to exceptions. This is never a good idea. > [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] > Although you can catch pointers, it's not recommended practice. > Note: The particular error I ran into was in GfshExecute::execute, where > throw new GfshExecuteException("gfsh error", exit_code); > was being used. This requires gtest to use: > EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8580) Improper use of throw in new C++ test framework
[ https://issues.apache.org/jira/browse/GEODE-8580?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209809#comment-17209809 ] ASF subversion and git services commented on GEODE-8580: Commit e03085d14f71aa4a44dfc78dd71f2e01280ec922 in geode-native's branch refs/heads/develop from Michael Martell [ https://gitbox.apache.org/repos/asf?p=geode-native.git;h=e03085d ] GEODE-8580: Don't throw pointers in GfshExecute (#670) > Improper use of throw in new C++ test framework > --- > > Key: GEODE-8580 > URL: https://issues.apache.org/jira/browse/GEODE-8580 > Project: Geode > Issue Type: Improvement > Components: native client >Reporter: Michael Martell >Assignee: Michael Martell >Priority: Major > Labels: pull-request-available > > The new C++ test framework (cppcache/integration/framework) throws pointers > to exceptions. This is never a good idea. > [https://stackoverflow.com/questions/10948316/throw-new-stdexception-vs-throw-stdexception] > Although you can catch pointers, it's not recommended practice. > Note: The particular error I ran into was in GfshExecute::execute, where > throw new GfshExecuteException("gfsh error", exit_code); > was being used. This requires gtest to use: > EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException*); -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8553) Reduce ThinClientLocatorHelper lock time
[ https://issues.apache.org/jira/browse/GEODE-8553?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209812#comment-17209812 ] ASF GitHub Bot commented on GEODE-8553: --- pdxcodemonkey commented on pull request #660: URL: https://github.com/apache/geode-native/pull/660#issuecomment-705153528 Re: BasicIPV6Test, you're right this one won't pass unless your build is compiled WITH_IPV6 _and_ your network is configured to route IPv6. We've never had a test bed that worked for this one, so in our CI we use the `ctest -E` switch to avoid running the test. This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Reduce ThinClientLocatorHelper lock time > > > Key: GEODE-8553 > URL: https://issues.apache.org/jira/browse/GEODE-8553 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.12.0, 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Major > Labels: pull-request-available > > During my troublshootings, I've seen that locking m_locatorLock for the whole > scope of the class function members might cause some inter-locks. > Problem here and in many other places of the NC is that networking operations > are performed while a mutex is locked. Therefore if *thread A* takes longer > than expected in performing its network operation, it might block another one > which does not requires any resource of the first *thread A*. Hence, the > inter-lock. > This improvement is the first one of a series regarding to lock scope > reduction when it comes with code regarding networking in NC. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209814#comment-17209814 ] ASF GitHub Bot commented on GEODE-8512: --- pdxcodemonkey commented on pull request #661: URL: https://github.com/apache/geode-native/pull/661#issuecomment-705154984 @gaussianrecurrence Please rebase your branch from the latest `develop` and push. @mmartell 's fix for GEODE-8580 should fix your test, and this will be good to go after you address Jake's feedback. 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209818#comment-17209818 ] ASF GitHub Bot commented on GEODE-8512: --- gaussianrecurrence commented on a change in pull request #661: URL: https://github.com/apache/geode-native/pull/661#discussion_r501271347 ## File path: cppcache/src/PdxType.cpp ## @@ -53,9 +54,13 @@ PdxType::PdxType(PdxTypeRegistry& pdxTypeRegistry, m_isVarLenFieldAdded(false), m_remoteToLocalFieldMap(nullptr), m_localToRemoteFieldMap(nullptr), - m_noJavaClass(false), + m_noJavaClass(!expectDomainClass), Review comment: Good point :) This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (GEODE-8581) "Define index" and "create defined index" should work if user switch connected locators
Jinmei Liao created GEODE-8581: -- Summary: "Define index" and "create defined index" should work if user switch connected locators Key: GEODE-8581 URL: https://issues.apache.org/jira/browse/GEODE-8581 Project: Geode Issue Type: Bug Components: gfsh Affects Versions: 1.13.0 Reporter: Jinmei Liao steps to reproduce: 1. connect to locator1 2. define index 3. disconnect and connect to locator2 4. create defined index note the index created in step 2 is not created. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-8581) "Define index" and "create defined index" should work if user switch connected locators
[ https://issues.apache.org/jira/browse/GEODE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated GEODE-8581: -- Labels: pull-request-available (was: ) > "Define index" and "create defined index" should work if user switch > connected locators > --- > > Key: GEODE-8581 > URL: https://issues.apache.org/jira/browse/GEODE-8581 > Project: Geode > Issue Type: Bug > Components: gfsh >Affects Versions: 1.13.0 >Reporter: Jinmei Liao >Priority: Major > Labels: pull-request-available > > steps to reproduce: > 1. connect to locator1 > 2. define index > 3. disconnect and connect to locator2 > 4. create defined index > note the index created in step 2 is not created. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8581) "Define index" and "create defined index" should work if user switch connected locators
[ https://issues.apache.org/jira/browse/GEODE-8581?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209824#comment-17209824 ] ASF GitHub Bot commented on GEODE-8581: --- jinmeiliao opened a new pull request #5602: URL: https://github.com/apache/geode/pull/5602 …user switch connected locators 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 > "Define index" and "create defined index" should work if user switch > connected locators > --- > > Key: GEODE-8581 > URL: https://issues.apache.org/jira/browse/GEODE-8581 > Project: Geode > Issue Type: Bug > Components: gfsh >Affects Versions: 1.13.0 >Reporter: Jinmei Liao >Priority: Major > > steps to reproduce: > 1. connect to locator1 > 2. define index > 3. disconnect and connect to locator2 > 4. create defined index > note the index created in step 2 is not created. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209823#comment-17209823 ] ASF GitHub Bot commented on GEODE-8512: --- gaussianrecurrence commented on a change in pull request #661: URL: https://github.com/apache/geode-native/pull/661#discussion_r501275182 ## File path: cppcache/src/Cache.cpp ## @@ -153,7 +153,12 @@ LogLevel Cache::getLogLevel() { return Log::logLevel(); } PdxInstanceFactory Cache::createPdxInstanceFactory( const std::string& className) const { - return m_cacheImpl->createPdxInstanceFactory(className); + return createPdxInstanceFactory(className, true); Review comment: By default a Java class is expected, that has always been the case. I get it can be a little bit confusing as flag in the serialized PdxType is inverted. 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209825#comment-17209825 ] ASF GitHub Bot commented on GEODE-8512: --- gaussianrecurrence commented on a change in pull request #661: URL: https://github.com/apache/geode-native/pull/661#discussion_r501277036 ## File path: cppcache/src/CacheImpl.cpp ## @@ -814,14 +814,19 @@ DataInput CacheImpl::createDataInput(const uint8_t* buffer, size_t len, } PdxInstanceFactory CacheImpl::createPdxInstanceFactory( -const std::string& className) const { +const std::string& className, bool expectDomainClass) const { this->throwIfClosed(); return PdxInstanceFactory( - className, *m_cacheStats, *m_pdxTypeRegistry, *this, + className, expectDomainClass, *m_cacheStats, *m_pdxTypeRegistry, *this, m_distributedSystem.getSystemProperties().getEnableTimeStatistics()); } +PdxInstanceFactory CacheImpl::createPdxInstanceFactory( Review comment: I was thinking on removing this overload as this is not part of the public API what do 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209828#comment-17209828 ] ASF GitHub Bot commented on GEODE-8512: --- gaussianrecurrence commented on pull request #661: URL: https://github.com/apache/geode-native/pull/661#issuecomment-705165314 > I think there is also a need for a unit test to verify the message is properly serialized. We have examples for some messages, not sure if there is one already for the original case where it was always false. I did not think about this. Thanks for the comment, it's a fair point :) This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209829#comment-17209829 ] ASF GitHub Bot commented on GEODE-8512: --- gaussianrecurrence commented on a change in pull request #661: URL: https://github.com/apache/geode-native/pull/661#discussion_r501279191 ## File path: cppcache/integration/test/PdxJsonTypeTest.cpp ## @@ -68,6 +68,32 @@ std::shared_ptr setupRegion(Cache& cache) { return region; } +TEST(PdxJsonTypeTest, testGfshQueryJsonInstances) { + Cluster cluster{LocatorCount{1}, ServerCount{1}}; + cluster.start(); + + auto& gfsh = cluster.getGfsh(); + gfsh.create().region().withName("region").withType("REPLICATE").execute(); + + auto cache = cluster.createCache(); + auto region = setupRegion(cache); + const std::string query_stmt{"SELECT * FROM /region"}; + + region->put("non-java-domain-class-entry", + cache.createPdxInstanceFactory(gemfireJsonClassName, false) + .writeString("foo", "bar") + .create()); + + EXPECT_NO_THROW(gfsh.query(query_stmt).execute()); Review comment: Well, if possible, that would be much better, for sure. Will take a look at it :) 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8565) c++ client tries to connect to down server until IO error is thrown
[ https://issues.apache.org/jira/browse/GEODE-8565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209831#comment-17209831 ] ASF GitHub Bot commented on GEODE-8565: --- codecov-io commented on pull request #662: URL: https://github.com/apache/geode-native/pull/662#issuecomment-705167622 # [Codecov](https://codecov.io/gh/apache/geode-native/pull/662?src=pr&el=h1) Report > Merging [#662](https://codecov.io/gh/apache/geode-native/pull/662?src=pr&el=desc) into [develop](https://codecov.io/gh/apache/geode-native/commit/2e64e74e3b29c9813776c80b34b84606ec7b8274?el=desc) will **decrease** coverage by `0.28%`. > The diff coverage is `56.25%`. [](https://codecov.io/gh/apache/geode-native/pull/662?src=pr&el=tree) ```diff @@ Coverage Diff @@ ## develop #662 +/- ## === - Coverage74.16% 73.87% -0.29% === Files 644 644 Lines5113151133 +2 === - Hits 3792037774 -146 - Misses 1321113359 +148 ``` | [Impacted Files](https://codecov.io/gh/apache/geode-native/pull/662?src=pr&el=tree) | Coverage Δ | | |---|---|---| | [cppcache/src/ThinClientPoolDM.cpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL1RoaW5DbGllbnRQb29sRE0uY3Bw) | `75.01% <56.25%> (+0.39%)` | :arrow_up: | | [cppcache/src/PutAllPartialResult.cpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL1B1dEFsbFBhcnRpYWxSZXN1bHQuY3Bw) | `0.00% <0.00%> (-47.62%)` | :arrow_down: | | [cppcache/src/VersionedCacheableObjectPartList.hpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL1ZlcnNpb25lZENhY2hlYWJsZU9iamVjdFBhcnRMaXN0LmhwcA==) | `52.70% <0.00%> (-27.03%)` | :arrow_down: | | [cppcache/src/CacheableObjectPartList.hpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL0NhY2hlYWJsZU9iamVjdFBhcnRMaXN0LmhwcA==) | `62.50% <0.00%> (-25.00%)` | :arrow_down: | | [cppcache/src/ReadWriteLock.cpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL1JlYWRXcml0ZUxvY2suY3Bw) | `81.25% <0.00%> (-18.75%)` | :arrow_down: | | [cppcache/src/ThinClientStickyManager.cpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL1RoaW5DbGllbnRTdGlja3lNYW5hZ2VyLmNwcA==) | `77.88% <0.00%> (-10.58%)` | :arrow_down: | | [cppcache/src/ThinClientRegion.cpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL1RoaW5DbGllbnRSZWdpb24uY3Bw) | `55.99% <0.00%> (-5.12%)` | :arrow_down: | | [cppcache/src/PutAllPartialResult.hpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL1B1dEFsbFBhcnRpYWxSZXN1bHQuaHBw) | `0.00% <0.00%> (-4.55%)` | :arrow_down: | | [cppcache/src/ClientMetadataService.cpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL0NsaWVudE1ldGFkYXRhU2VydmljZS5jcHA=) | `62.24% <0.00%> (-3.90%)` | :arrow_down: | | [cppcache/src/ClientMetadata.cpp](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree#diff-Y3BwY2FjaGUvc3JjL0NsaWVudE1ldGFkYXRhLmNwcA==) | `65.16% <0.00%> (-0.57%)` | :arrow_down: | | ... and [6 more](https://codecov.io/gh/apache/geode-native/pull/662/diff?src=pr&el=tree-more) | | -- [Continue to review full report at Codecov](https://codecov.io/gh/apache/geode-native/pull/662?src=pr&el=continue). > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta) > `Δ = absolute (impact)`, `ø = not affected`, `? = missing data` > Powered by [Codecov](https://codecov.io/gh/apache/geode-native/pull/662?src=pr&el=footer). Last update [2e64e74...bee8e54](https://codecov.io/gh/apache/geode-native/pull/662?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments). This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > c++ client tries to connect to down server until IO error is thrown > --- > > Key: GEODE-8565 > URL: ht
[jira] [Commented] (GEODE-8531) Coredump when removing an entry
[ https://issues.apache.org/jira/browse/GEODE-8531?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209847#comment-17209847 ] ASF GitHub Bot commented on GEODE-8531: --- gaussianrecurrence commented on pull request #667: URL: https://github.com/apache/geode-native/pull/667#issuecomment-705177468 It seems that clang compilation does not like so much my implementation of the Gmock. Will fix it and let you know once ready for review :) 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 > Coredump when removing an entry > --- > > Key: GEODE-8531 > URL: https://issues.apache.org/jira/browse/GEODE-8531 > Project: Geode > Issue Type: Bug > Components: native client >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Major > Labels: pull-request-available > Attachments: notifications-no-massif.log > > > The scenario is the following: > *HAVING* a configured concurrency-checks-enabled=false in the > client-cache.xml for a region > *HAVING* a configured subscription-notification for the pool on which the > region is defined > *HAVING* regsitered interest on all the keys of this region, values included > *WHEN* a LOCAL_DESTROY notification arrives and therefore > {color:#4c9aff}MapSegment::remove{color}{color:#172b4d} is called{color} > {color:#172b4d}*THEN* the application crashes, claiming that the variable > entry is a nullptr.{color} > > This is the segmentation report: > {code:java} > [debug 2020/09/24 17:21:07.263036 CEST DESKTOP-3SQUK3P:586546 > 140013383710464] Region::destroy: region [/region] destroying key > [entry-152150] > Segmentation fault > *** Segmentation fault > Register dump: RAX: RBX: RCX: > > RDX: RSI: 7f57580008e0 RDI: 7f5767ffe670 > RBP: 7f5767ffe6c0 R8 : 7f5758000d70 R9 : 563da49f0ac0 > R10: 000c R11: 7f57815a2058 R12: 563da6971a48 > R13: 563da696dbd0 R14: R15: 7ffd06db85a0 > RSP: 7f5767ffe610 RIP: 7f578159ac47 EFLAGS: 00010202 CS: 0033 > FS: GS: Trap: 000e Error: 0004 OldMask: > CR2: FPUCW: 037f FPUSW: TAG: 7f57 > RIP: 80b37f70 RDP: ST(0) ST(1) > > ST(2) ST(3) > ST(4) ST(5) c000 > ST(6) c000 ST(7) e000 e000 > mxcsr: 1f80 > XMM0: 25252525 XMM1: > 25252525 > XMM2: 25252525 XMM3: > 25252525 > XMM4: 25252525 XMM5: > 25252525 > XMM6: 25252525 XMM7: > 25252525 > XMM8: 25252525 XMM9: > 25252525 > XMM10: 25252525 XMM11: > 25252525 > XMM12: 25252525 XMM13: > 25252525 > XMM14: 25252525 XMM15: > 25252525Backtrace: > /usr/local/lib/libapache-geode.so(_ZN6apache5geode6client10MapSegment6removeERKSt10shared_ptrINS1_12CacheableKeyEERS3_INS1_12SerializableEERS3_INS1_12MapEntryImplEEiS3_INS1_10VersionTagEEbRb+0x287)[0x7f578159ac47] > /usr/local/lib/libapache-geode.so(_ZN6apache5geode6client20ConcurrentEntriesMap6removeERKSt10shared_ptrINS1_12CacheableKeyEERS3_INS1_12SerializableEERS3_INS1_12MapEntryImplEEiS3_INS1_10VersionTagEEb+0xa0)[0x7f57814e1782] > /usr/local/lib/libapache-geode.so(+0x77173d)[0x7f578157673d] > /usr/local/lib/libapache-geode.so(_ZN6apache5geode6client11LocalRegion13updateNoThrowINS1_14DestroyActionsEEE9GfErrTypeRKSt10shared_ptrINS1_12CacheableKeyEERKS6_INS1_12SerializableEESE_RSC_iNS1_15CacheEventFlagsES6_INS1_10VersionTagEEPNS1_9DataInputES6_INS1_7EventIdEE+0x515)[0x7f578157af2b] > /usr/local/lib/libapache-geode.so(_ZN6apache5geode6client11LocalRegion14destroyNoThrowERKSt10shared_ptrINS1_12CacheableKeyEERKS3_INS1_12SerializableEEiNS1_15CacheEventFlagsES3_INS1_10VersionTagEE+0xae)[0x7f578156cf9a] > /usr/local/lib/libapache-geode.so(_ZN6apache5geode6client16ThinClientRegion25clientNotificationHandlerERNS1_10TcrMessageE+0x1dd)[0x7f57816e13bf] > /usr/local/lib/libapache-geode.so(_ZN6apache5geode6client16ThinClientRegion19receiveNotificationEP
[jira] [Commented] (GEODE-8566) Redis native tests should not also stand up a Geode server
[ https://issues.apache.org/jira/browse/GEODE-8566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209858#comment-17209858 ] Geode Integration commented on GEODE-8566: -- Seen in [AcceptanceTestOpenJDK8 #495|https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/AcceptanceTestOpenJDK8/builds/495] ... see [test results|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0400/test-results/acceptanceTest/1602099917/] or download [artifacts|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0400/test-artifacts/1602099917/acceptancetestfiles-OpenJDK8-1.14.0-build.0400.tgz]. > Redis native tests should not also stand up a Geode server > -- > > Key: GEODE-8566 > URL: https://issues.apache.org/jira/browse/GEODE-8566 > Project: Geode > Issue Type: Test > Components: redis >Reporter: Jens Deppe >Assignee: Jens Deppe >Priority: Major > Labels: pull-request-available > Fix For: 1.14.0 > > > Our native acceptance tests currently extend from the integration tests and > both classes have a {{@ClassRule}} that results in both a native (container) > instance and a Geode instance starting up. Mostly not a problem except for > {{PubSubNativeAcceptanceTest}} which was not testing against native redis. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (GEODE-8582) Redis SCAN returns internal server error
Sarah Abbey created GEODE-8582: -- Summary: Redis SCAN returns internal server error Key: GEODE-8582 URL: https://issues.apache.org/jira/browse/GEODE-8582 Project: Geode Issue Type: Bug Components: redis Reporter: Sarah Abbey Encountered when running tests from redis-py: {code:java} 127.0.0.1:7000> set a 1 OK 127.0.0.1:7000> set b 2 OK 127.0.0.1:7000> set c 3 OK 127.0.0.1:7000> scan 0 (error) ERR The server had an internal error please try again {code} Also found bug in count where we don't return the last key. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-8582) Redis SCAN returns internal server error
[ https://issues.apache.org/jira/browse/GEODE-8582?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sarah Abbey updated GEODE-8582: --- Priority: Minor (was: Major) > Redis SCAN returns internal server error > > > Key: GEODE-8582 > URL: https://issues.apache.org/jira/browse/GEODE-8582 > Project: Geode > Issue Type: Bug > Components: redis >Reporter: Sarah Abbey >Assignee: Sarah Abbey >Priority: Minor > > Encountered when running tests from redis-py: > {code:java} > 127.0.0.1:7000> set a 1 > OK > 127.0.0.1:7000> set b 2 > OK > 127.0.0.1:7000> set c 3 > OK > 127.0.0.1:7000> scan 0 > (error) ERR The server had an internal error please try again > {code} > Also found bug in count where we don't return the last key. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (GEODE-8582) Redis SCAN returns internal server error
[ https://issues.apache.org/jira/browse/GEODE-8582?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sarah Abbey reassigned GEODE-8582: -- Assignee: Sarah Abbey > Redis SCAN returns internal server error > > > Key: GEODE-8582 > URL: https://issues.apache.org/jira/browse/GEODE-8582 > Project: Geode > Issue Type: Bug > Components: redis >Reporter: Sarah Abbey >Assignee: Sarah Abbey >Priority: Major > > Encountered when running tests from redis-py: > {code:java} > 127.0.0.1:7000> set a 1 > OK > 127.0.0.1:7000> set b 2 > OK > 127.0.0.1:7000> set c 3 > OK > 127.0.0.1:7000> scan 0 > (error) ERR The server had an internal error please try again > {code} > Also found bug in count where we don't return the last key. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-8582) Redis SCAN returns internal server error
[ https://issues.apache.org/jira/browse/GEODE-8582?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated GEODE-8582: -- Labels: pull-request-available (was: ) > Redis SCAN returns internal server error > > > Key: GEODE-8582 > URL: https://issues.apache.org/jira/browse/GEODE-8582 > Project: Geode > Issue Type: Bug > Components: redis >Reporter: Sarah Abbey >Assignee: Sarah Abbey >Priority: Minor > Labels: pull-request-available > > Encountered when running tests from redis-py: > {code:java} > 127.0.0.1:7000> set a 1 > OK > 127.0.0.1:7000> set b 2 > OK > 127.0.0.1:7000> set c 3 > OK > 127.0.0.1:7000> scan 0 > (error) ERR The server had an internal error please try again > {code} > Also found bug in count where we don't return the last key. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8582) Redis SCAN returns internal server error
[ https://issues.apache.org/jira/browse/GEODE-8582?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209870#comment-17209870 ] ASF GitHub Bot commented on GEODE-8582: --- sabbey37 opened a new pull request #5603: URL: https://github.com/apache/geode/pull/5603 Co-authored-by: Darrel Schneider Encountered when running tests from redis-py: ``` 127.0.0.1:7000> set a 1 OK 127.0.0.1:7000> set b 2 OK 127.0.0.1:7000> set c 3 OK 127.0.0.1:7000> scan 0 (error) ERR The server had an internal error please try again ``` Also found bug in count where we don't return the last key. 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 returns internal server error > > > Key: GEODE-8582 > URL: https://issues.apache.org/jira/browse/GEODE-8582 > Project: Geode > Issue Type: Bug > Components: redis >Reporter: Sarah Abbey >Assignee: Sarah Abbey >Priority: Minor > > Encountered when running tests from redis-py: > {code:java} > 127.0.0.1:7000> set a 1 > OK > 127.0.0.1:7000> set b 2 > OK > 127.0.0.1:7000> set c 3 > OK > 127.0.0.1:7000> scan 0 > (error) ERR The server had an internal error please try again > {code} > Also found bug in count where we don't return the last key. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (GEODE-8583) create RestrictedInputValuesParameterRequirements in Redis Module
John Hutchison created GEODE-8583: - Summary: create RestrictedInputValuesParameterRequirements in Redis Module Key: GEODE-8583 URL: https://issues.apache.org/jira/browse/GEODE-8583 Project: Geode Issue Type: Test Reporter: John Hutchison -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-8583) create RestrictedInputValuesParameterRequirements in Redis Module
[ https://issues.apache.org/jira/browse/GEODE-8583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated GEODE-8583: -- Labels: pull-request-available (was: ) > create RestrictedInputValuesParameterRequirements in Redis Module > - > > Key: GEODE-8583 > URL: https://issues.apache.org/jira/browse/GEODE-8583 > Project: Geode > Issue Type: Test >Reporter: John Hutchison >Priority: Major > Labels: pull-request-available > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8583) create RestrictedInputValuesParameterRequirements in Redis Module
[ https://issues.apache.org/jira/browse/GEODE-8583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209874#comment-17209874 ] ASF GitHub Bot commented on GEODE-8583: --- jhutchison opened a new pull request #5604: URL: https://github.com/apache/geode/pull/5604 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 > create RestrictedInputValuesParameterRequirements in Redis Module > - > > Key: GEODE-8583 > URL: https://issues.apache.org/jira/browse/GEODE-8583 > Project: Geode > Issue Type: Test >Reporter: John Hutchison >Priority: Major > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-8583) create RestrictedInputValuesParameterRequirements in Redis Module
[ https://issues.apache.org/jira/browse/GEODE-8583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] John Hutchison updated GEODE-8583: -- Issue Type: Improvement (was: Test) Labels: pull-request-available redis (was: pull-request-available) Priority: Minor (was: Major) > create RestrictedInputValuesParameterRequirements in Redis Module > - > > Key: GEODE-8583 > URL: https://issues.apache.org/jira/browse/GEODE-8583 > Project: Geode > Issue Type: Improvement >Reporter: John Hutchison >Priority: Minor > Labels: pull-request-available, redis > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8583) create RestrictedInputValuesParameterRequirements in Redis Module
[ https://issues.apache.org/jira/browse/GEODE-8583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209893#comment-17209893 ] ASF GitHub Bot commented on GEODE-8583: --- dschneider-pivotal commented on a change in pull request #5604: URL: https://github.com/apache/geode/pull/5604#discussion_r501326934 ## File path: geode-redis/src/main/java/org/apache/geode/redis/internal/ParameterRequirements/RestrictedInputValuesParameterRequirements.java ## @@ -0,0 +1,49 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.apache.geode.redis.internal.ParameterRequirements; + +import java.util.List; + +import org.apache.geode.redis.internal.netty.Command; +import org.apache.geode.redis.internal.netty.ExecutionHandlerContext; + +public class RestrictedInputValuesParameterRequirements implements ParameterRequirements { + + List allowedValues = null; + + public RestrictedInputValuesParameterRequirements(List allowedValues) { +this.allowedValues = allowedValues; + } + + @Override + public void checkParameters(Command command, + ExecutionHandlerContext executionHandlerContext) { +List parameters = command.getProcessedCommand(); +String commandType = command.getCommandType().name(); + +parameters.forEach(parameter -> { + String parameterString = parameter.toString(); + if (isNotAllowed(parameterString) && + !parameterString.equalsIgnoreCase(commandType)) { Review comment: It seems like it would be better to only iterate over a sublist that excludes that first item (which is the commandType). Saying a parameter is okay if it is equal "commandType" would allow someone to do this following command: "INFO INFO INFO" and it would not care about the extra INFO parameters because they match the commandType. ## File path: geode-redis/src/main/java/org/apache/geode/redis/internal/ParameterRequirements/RestrictedInputValuesParameterRequirements.java ## @@ -0,0 +1,49 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.apache.geode.redis.internal.ParameterRequirements; + +import java.util.List; + +import org.apache.geode.redis.internal.netty.Command; +import org.apache.geode.redis.internal.netty.ExecutionHandlerContext; + +public class RestrictedInputValuesParameterRequirements implements ParameterRequirements { + + List allowedValues = null; Review comment: make this private final and initialize it only in the constructor ## File path: geode-redis/src/main/java/org/apache/geode/redis/internal/ParameterRequirements/RestrictedInputValuesParameterRequirements.java ## @@ -0,0 +1,49 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific lang
[jira] [Commented] (GEODE-8583) create RestrictedInputValuesParameterRequirements in Redis Module
[ https://issues.apache.org/jira/browse/GEODE-8583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209895#comment-17209895 ] ASF GitHub Bot commented on GEODE-8583: --- dschneider-pivotal commented on a change in pull request #5604: URL: https://github.com/apache/geode/pull/5604#discussion_r501336900 ## File path: geode-redis/src/main/java/org/apache/geode/redis/internal/GeodeRedisServer.java ## @@ -93,13 +86,21 @@ public GeodeRedisServer(String bindAddress, int port, InternalCache cache) { CommandFunction.register(regionProvider.getDataRegion(), stripedExecutor, redisStats); RenameFunction.register(regionProvider.getDataRegion(), stripedExecutor, redisStats); RedisCommandFunction.register(); + passiveExpirationManager = new PassiveExpirationManager(regionProvider.getDataRegion(), redisStats); -redisCommandExecutor = LoggingExecutors.newCachedThreadPool("GeodeRedisServer-Command-", true); -nettyRedisServer = new NettyRedisServer(() -> cache.getInternalDistributedSystem().getConfig(), -regionProvider, pubSub, -this::allowUnsupportedCommands, this::shutdown, port, bindAddress, redisStats, -redisCommandExecutor); +redisCommandExecutor = +LoggingExecutors.newCachedThreadPool("Redis Command", true); Review comment: This is an example of why it is better not to change a bunch of formatting. Just let spotless do the formatting. In this case I think you accidently lost a change to the thread name. Someone else changed it to "GeodeRedisServer-Command-" and I think you lost that and reverted to back to "Redis Command". You should have had a conflict but when you have changed a bunch of formatting it can be hard for you to see things like this. 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 > create RestrictedInputValuesParameterRequirements in Redis Module > - > > Key: GEODE-8583 > URL: https://issues.apache.org/jira/browse/GEODE-8583 > Project: Geode > Issue Type: Improvement >Reporter: John Hutchison >Priority: Minor > Labels: pull-request-available, redis > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (GEODE-8583) create RestrictedInputValuesParameterRequirements in Redis Module
[ https://issues.apache.org/jira/browse/GEODE-8583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209896#comment-17209896 ] ASF GitHub Bot commented on GEODE-8583: --- dschneider-pivotal commented on a change in pull request #5604: URL: https://github.com/apache/geode/pull/5604#discussion_r501337678 ## File path: geode-redis/src/main/java/org/apache/geode/redis/internal/ParameterRequirements/RestrictedInputValuesParameterRequirements.java ## @@ -0,0 +1,49 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ + +package org.apache.geode.redis.internal.ParameterRequirements; + +import java.util.List; + +import org.apache.geode.redis.internal.netty.Command; +import org.apache.geode.redis.internal.netty.ExecutionHandlerContext; + +public class RestrictedInputValuesParameterRequirements implements ParameterRequirements { + + List allowedValues = null; + + public RestrictedInputValuesParameterRequirements(List allowedValues) { +this.allowedValues = allowedValues; + } + + @Override + public void checkParameters(Command command, + ExecutionHandlerContext executionHandlerContext) { +List parameters = command.getProcessedCommand(); +String commandType = command.getCommandType().name(); + +parameters.forEach(parameter -> { + String parameterString = parameter.toString(); + if (isNotAllowed(parameterString) && + !parameterString.equalsIgnoreCase(commandType)) { +throw new RedisParametersMismatchException(""); Review comment: It seems odd to throw an exception with an empty string message. This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > create RestrictedInputValuesParameterRequirements in Redis Module > - > > Key: GEODE-8583 > URL: https://issues.apache.org/jira/browse/GEODE-8583 > Project: Geode > Issue Type: Improvement >Reporter: John Hutchison >Priority: Minor > Labels: pull-request-available, redis > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Updated] (GEODE-8419) SSL/TLS protocol and cipher suite configuration is ignored
[ https://issues.apache.org/jira/browse/GEODE-8419?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Owen Nichols updated GEODE-8419: Fix Version/s: 1.13.1 > SSL/TLS protocol and cipher suite configuration is ignored > -- > > Key: GEODE-8419 > URL: https://issues.apache.org/jira/browse/GEODE-8419 > Project: Geode > Issue Type: Bug > Components: client/server, membership, security >Affects Versions: 1.10.0, 1.11.0, 1.12.0, 1.13.0, 1.14.0 >Reporter: Jacob Barrett >Assignee: Bruce J Schuchardt >Priority: Major > Labels: pull-request-available > Fix For: 1.14.0, 1.13.1 > > > Configuring {{ssl-protocols}} or {{ssl-ciphers}} properties, or per-component > ssl properties, have no effect. Configuring {{ssl-protocols}} may effect the > {{SSLContext}} selected and limit some of the protocols allowed but does not > restrict to just the set specified in the property. The {{ssl-ciphers}} > property does not limit cipher selection at all. > The result is that all ciphers allowed under the match {{SSLContext}} are > allowed and negotiated. This can result in an unintended cipher being used in > SSL/TLS communication. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Created] (GEODE-8584) Message transmission fails with IllegalStateException in socket i/o code
Bruce J Schuchardt created GEODE-8584: - Summary: Message transmission fails with IllegalStateException in socket i/o code Key: GEODE-8584 URL: https://issues.apache.org/jira/browse/GEODE-8584 Project: Geode Issue Type: Bug Components: membership, messaging Affects Versions: 1.13.0, 1.12.0, 1.14.0 Reporter: Bruce J Schuchardt Transmission of an update operation failed with a toData exception caused by an IllegalStateException in socket i/o code. It shouldn't be possible for this exception to happen unless multiple threads are using the buffer at the same time. {noformat} org.apache.geode.ToDataException: toData failed on dsfid=71 msg:null at org.apache.geode.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1509) at org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:249) 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:2053) at org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1981) at org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2018) at org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083) at org.apache.geode.internal.cache.DistributedCacheOperation._distribute(DistributedCacheOperation.java:572) at org.apache.geode.internal.cache.DistributedCacheOperation.startOperation(DistributedCacheOperation.java:277) at org.apache.geode.internal.cache.DistributedCacheOperation.distribute(DistributedCacheOperation.java:318) at org.apache.geode.internal.cache.DistributedRegion.distributeUpdate(DistributedRegion.java:520) at org.apache.geode.internal.cache.DistributedRegion.basicPutPart3(DistributedRegion.java:498) at org.apache.geode.internal.cache.map.RegionMapPut.doAfterCompletionActions(RegionMapPut.java:307) at org.apache.geode.internal.cache.map.AbstractRegionMapPut.doPut(AbstractRegionMapPut.java:185) at org.apache.geode.internal.cache.map.AbstractRegionMapPut.runWhileLockedForCacheModification(AbstractRegionMapPut.java:119) at org.apache.geode.internal.cache.map.RegionMapPut.runWhileLockedForCacheModification(RegionMapPut.java:161) at org.apache.geode.internal.cache.map.AbstractRegionMapPut.put(AbstractRegionMapPut.java:169) at org.apache.geode.internal.cache.AbstractRegionMap.basicPut(AbstractRegionMap.java:2044) at org.apache.geode.internal.cache.LocalRegion.virtualPut(LocalRegion.java:5599) at org.apache.geode.internal.cache.DistributedRegion.virtualPut(DistributedRegion.java:393) at org.apache.geode.internal.cache.LocalRegion.virtualPut(LocalRegion.java:5577) at org.apache.geode.internal.cache.LocalRegionDataView.putEntry(LocalRegionDataView.java:157) at org.apache.geode.internal.cache.LocalRegion.basicPut(LocalRegion.java:5035) at org.apache.geode.internal.cache.LocalRegion.replaceWithCallbackArgument(LocalRegion.java:10600) at org.apache.geode.internal.cache.LocalRegion.replace(LocalRegion.java:10566) [application code traces deleted] Caused by: java.lang.IllegalArgumentException at java.nio.Buffer.position(Buffer.java:244) at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:96) at sun.nio.ch.IOUtil.write(IOUtil.java:51) at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:469) at org.apache.geode.internal.tcp.Connection.writeFully(Connection.java:2596) at org.apache.geode.internal.tcp.Connection.sendPreserialized(Connection.java:1866) at org.apache.geode.internal.tcp.MsgStreamer.realFlush(MsgStreamer.java:330) at org.apache.geode.internal.tcp.MsgStreamer.write(MsgStreamer.java:390) at org.apache.geode.DataSerializer.writeByteArray(DataSerializer.java:1185) at org.apache.geode.DataSerializer.writeByteArray(DataSerializer.java:1153) at org.apache.geode.internal.cache.DistributedCacheOperation.writeValue(DistributedCacheOperation.java:137) at org.apache.geode.internal.cache.UpdateOperation$UpdateMessage.toData(UpdateOpera
[jira] [Updated] (GEODE-8584) Message transmission fails with IllegalStateException in socket i/o code
[ https://issues.apache.org/jira/browse/GEODE-8584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] ASF GitHub Bot updated GEODE-8584: -- Labels: pull-request-available (was: ) > Message transmission fails with IllegalStateException in socket i/o code > > > Key: GEODE-8584 > URL: https://issues.apache.org/jira/browse/GEODE-8584 > Project: Geode > Issue Type: Bug > Components: membership, messaging >Affects Versions: 1.12.0, 1.13.0, 1.14.0 >Reporter: Bruce J Schuchardt >Priority: Major > Labels: pull-request-available > > Transmission of an update operation failed with a toData exception caused by > an IllegalStateException in socket i/o code. It shouldn't be possible for > this exception to happen unless multiple threads are using the buffer at the > same time. > > {noformat} > org.apache.geode.ToDataException: toData failed on dsfid=71 msg:null > at > org.apache.geode.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1509) > at > org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:249) > 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:2053) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1981) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2018) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083) > at > org.apache.geode.internal.cache.DistributedCacheOperation._distribute(DistributedCacheOperation.java:572) > at > org.apache.geode.internal.cache.DistributedCacheOperation.startOperation(DistributedCacheOperation.java:277) > at > org.apache.geode.internal.cache.DistributedCacheOperation.distribute(DistributedCacheOperation.java:318) > at > org.apache.geode.internal.cache.DistributedRegion.distributeUpdate(DistributedRegion.java:520) > at > org.apache.geode.internal.cache.DistributedRegion.basicPutPart3(DistributedRegion.java:498) > at > org.apache.geode.internal.cache.map.RegionMapPut.doAfterCompletionActions(RegionMapPut.java:307) > at > org.apache.geode.internal.cache.map.AbstractRegionMapPut.doPut(AbstractRegionMapPut.java:185) > at > org.apache.geode.internal.cache.map.AbstractRegionMapPut.runWhileLockedForCacheModification(AbstractRegionMapPut.java:119) > at > org.apache.geode.internal.cache.map.RegionMapPut.runWhileLockedForCacheModification(RegionMapPut.java:161) > at > org.apache.geode.internal.cache.map.AbstractRegionMapPut.put(AbstractRegionMapPut.java:169) > at > org.apache.geode.internal.cache.AbstractRegionMap.basicPut(AbstractRegionMap.java:2044) > at > org.apache.geode.internal.cache.LocalRegion.virtualPut(LocalRegion.java:5599) > at > org.apache.geode.internal.cache.DistributedRegion.virtualPut(DistributedRegion.java:393) > at > org.apache.geode.internal.cache.LocalRegion.virtualPut(LocalRegion.java:5577) > at > org.apache.geode.internal.cache.LocalRegionDataView.putEntry(LocalRegionDataView.java:157) > at > org.apache.geode.internal.cache.LocalRegion.basicPut(LocalRegion.java:5035) > at > org.apache.geode.internal.cache.LocalRegion.replaceWithCallbackArgument(LocalRegion.java:10600) > at > org.apache.geode.internal.cache.LocalRegion.replace(LocalRegion.java:10566) > [application code traces deleted] > Caused by: java.lang.IllegalArgumentException > at java.nio.Buffer.position(Buffer.java:244) > at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:96) > at sun.nio.ch.IOUtil.write(IOUtil.java:51) > at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:469) > at > org.apache.geode.internal.tcp.Connection.writeFully(Connection.java:2596) > at > org.apache.geode.internal.tcp.Connection.sendPreserialized(Connection.java:1866) > at > org.apache.geode.internal.tcp.MsgStreamer.realFlush(MsgStreamer.java:330) > at org.apache.geode.internal.tcp.MsgStreamer.write(MsgStreamer.java:390
[jira] [Commented] (GEODE-8584) Message transmission fails with IllegalStateException in socket i/o code
[ https://issues.apache.org/jira/browse/GEODE-8584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209934#comment-17209934 ] ASF GitHub Bot commented on GEODE-8584: --- bschuchardt opened a new pull request #5605: URL: https://github.com/apache/geode/pull/5605 Add appropriate synchronization when using ioFilter's buffers. to do: add testing to do: document the need for synchronization in the NioFilter interface. 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 > Message transmission fails with IllegalStateException in socket i/o code > > > Key: GEODE-8584 > URL: https://issues.apache.org/jira/browse/GEODE-8584 > Project: Geode > Issue Type: Bug > Components: membership, messaging >Affects Versions: 1.12.0, 1.13.0, 1.14.0 >Reporter: Bruce J Schuchardt >Priority: Major > > Transmission of an update operation failed with a toData exception caused by > an IllegalStateException in socket i/o code. It shouldn't be possible for > this exception to happen unless multiple threads are using the buffer at the > same time. > > {noformat} > org.apache.geode.ToDataException: toData failed on dsfid=71 msg:null > at > org.apache.geode.internal.InternalDataSerializer.writeDSFID(InternalDataSerializer.java:1509) > at > org.apache.geode.internal.tcp.MsgStreamer.writeMessage(MsgStreamer.java:249) > 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:2053) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.sendOutgoing(ClusterDistributionManager.java:1981) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.sendMessage(ClusterDistributionManager.java:2018) > at > org.apache.geode.distributed.internal.ClusterDistributionManager.putOutgoing(ClusterDistributionManager.java:1083) > at > org.apache.geode.internal.cache.DistributedCacheOperation._distribute(DistributedCacheOperation.java:572) > at > org.apache.geode.internal.cache.DistributedCacheOperation.startOperation(DistributedCacheOperation.java:277) > at > org.apache.geode.internal.cache.DistributedCacheOperation.distribute(DistributedCacheOperation.java:318) > at > org.apache.geode.internal.cache.DistributedRegion.distributeUpdate(DistributedRegion.java:520) > at > org.apache.geode.internal.cache.DistributedRegion.basicPutPart3(DistributedRegion.java:498) > at > org.apache.geode.internal.cache.map.RegionMapPut.doAfterCompletionActions(RegionMapPut.java:307) > at > org.apache.geode.internal.cache.map.AbstractRegionMapPut.doPut(AbstractRegionMapPut.java:185) > at > org.apache.geode.internal.cache.map.AbstractRegionMapPut.runWhileLockedForCacheModification(AbstractRegionMapPut.java:119) > at > org.apache.geode.internal.cache.map.RegionMapPut.runWhileLockedForCacheModification(RegionMap
[jira] [Commented] (GEODE-8566) Redis native tests should not also stand up a Geode server
[ https://issues.apache.org/jira/browse/GEODE-8566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209939#comment-17209939 ] Geode Integration commented on GEODE-8566: -- Seen in [AcceptanceTestOpenJDK8 #496|https://concourse.apachegeode-ci.info/teams/main/pipelines/apache-develop-main/jobs/AcceptanceTestOpenJDK8/builds/496] ... see [test results|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0400/test-results/acceptanceTest/1602115632/] or download [artifacts|http://files.apachegeode-ci.info/builds/apache-develop-main/1.14.0-build.0400/test-artifacts/1602115632/acceptancetestfiles-OpenJDK8-1.14.0-build.0400.tgz]. > Redis native tests should not also stand up a Geode server > -- > > Key: GEODE-8566 > URL: https://issues.apache.org/jira/browse/GEODE-8566 > Project: Geode > Issue Type: Test > Components: redis >Reporter: Jens Deppe >Assignee: Jens Deppe >Priority: Major > Labels: pull-request-available > Fix For: 1.14.0 > > > Our native acceptance tests currently extend from the integration tests and > both classes have a {{@ClassRule}} that results in both a native (container) > instance and a Geode instance starting up. Mostly not a problem except for > {{PubSubNativeAcceptanceTest}} which was not testing against native redis. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Reopened] (GEODE-8577) PubSubNativeRedisAcceptanceTest is flaky
[ https://issues.apache.org/jira/browse/GEODE-8577?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sarah Abbey reopened GEODE-8577: Assignee: Sarah Abbey It's still flaky: https://concourse.apachegeode-ci.info/builds/195952 > PubSubNativeRedisAcceptanceTest is flaky > > > Key: GEODE-8577 > URL: https://issues.apache.org/jira/browse/GEODE-8577 > Project: Geode > Issue Type: Test > Components: redis >Reporter: Jens Deppe >Assignee: Sarah Abbey >Priority: Major > Labels: pull-request-available > Fix For: 1.14.0 > > > Going to disable this one test and work on fixing that. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
[ https://issues.apache.org/jira/browse/GEODE-8585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sarah Abbey reassigned GEODE-8585: -- Assignee: Sarah Abbey > 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: Major > > 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] [Updated] (GEODE-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
[ https://issues.apache.org/jira/browse/GEODE-8585?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sarah Abbey updated GEODE-8585: --- Priority: Minor (was: Major) > 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 > > 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-8585) Redis SCAN, HSCAN, and SSCAN do not detect illegal parameters
Sarah Abbey created GEODE-8585: -- Summary: 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 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-8512) Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory
[ https://issues.apache.org/jira/browse/GEODE-8512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17209956#comment-17209956 ] ASF GitHub Bot commented on GEODE-8512: --- mmartell commented on a change in pull request #661: URL: https://github.com/apache/geode-native/pull/661#discussion_r501415996 ## File path: cppcache/integration/test/PdxJsonTypeTest.cpp ## @@ -68,6 +68,32 @@ std::shared_ptr setupRegion(Cache& cache) { return region; } +TEST(PdxJsonTypeTest, testGfshQueryJsonInstances) { + Cluster cluster{LocatorCount{1}, ServerCount{1}}; + cluster.start(); + + auto& gfsh = cluster.getGfsh(); + gfsh.create().region().withName("region").withType("REPLICATE").execute(); + + auto cache = cluster.createCache(); + auto region = setupRegion(cache); + const std::string query_stmt{"SELECT * FROM /region"}; + + region->put("non-java-domain-class-entry", + cache.createPdxInstanceFactory(gemfireJsonClassName, false) + .writeString("foo", "bar") + .create()); + + EXPECT_NO_THROW(gfsh.query(query_stmt).execute()); + + region->put("java-domain-class-entry", + cache.createPdxInstanceFactory(gemfireJsonClassName) + .writeString("foo", "bar") + .create()); + + EXPECT_THROW(gfsh.query(query_stmt).execute(), GfshExecuteException); Review comment: Please check the intended use of this EXPECT_THROW. Even with the GEODE-8580 fix line 94 does not throw. Maybe because the value already exists from the first put? If you put a different object (e.g. "foo2", "bar") on line 91, then line 94 throws, and the test passes. 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 > Be able to specify 'expectDomainClass' when calling createPdxInstanceFactory > > > Key: GEODE-8512 > URL: https://issues.apache.org/jira/browse/GEODE-8512 > Project: Geode > Issue Type: Improvement > Components: native client >Affects Versions: 1.13.0 >Reporter: Mario Salazar de Torres >Assignee: Mario Salazar de Torres >Priority: Minor > Labels: JsonFormatter, pull-request-available > > Within Java client, you can specify if the PdxInstance you want to create is > a Java domain class or not, but this is not the case for geode-native C++ > client. > Thing is that in order to implement JsonFormatter in C++ client, having this > change is mandatory, otherwise creating PdxType's with __GEMFIRE_JSON > classname will present some issues while using cquery's. > -- This message was sent by Atlassian Jira (v8.3.4#803005)