[geode] branch feature/GEODE-5401 updated: Fix review comments. Use ExpireDisconnectedClientTransactionsMessage instead of TXManagerImpl.TXRemovalMessage when expire client transactions. Only send new
This is an automated email from the ASF dual-hosted git repository. eshu11 pushed a commit to branch feature/GEODE-5401 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/GEODE-5401 by this push: new 40bcdbb Fix review comments. Use ExpireDisconnectedClientTransactionsMessage instead of TXManagerImpl.TXRemovalMessage when expire client transactions. Only send new message to Geode 1.7.0 and later servers - assuming old version servers will be rolled soon. Handle differently when server receives this new message based on sender version. 40bcdbb is described below commit 40bcdbb35f50b4ffc5b8d1e51b97418ca40f6ce8 Author: eshu AuthorDate: Thu Jul 26 16:34:09 2018 -0700 Fix review comments. Use ExpireDisconnectedClientTransactionsMessage instead of TXManagerImpl.TXRemovalMessage when expire client transactions. Only send new message to Geode 1.7.0 and later servers - assuming old version servers will be rolled soon. Handle differently when server receives this new message based on sender version. --- ...ntServerTransactionFailoverDistributedTest.java | 18 +-- ...overWithMixedVersionServersDistributedTest.java | 33 + .../org/apache/geode/internal/DSFIDFactory.java| 6 +- .../geode/internal/DataSerializableFixedID.java| 4 +- ...xpireDisconnectedClientTransactionsMessage.java | 85 + .../apache/geode/internal/cache/TXManagerImpl.java | 140 + ...eDisconnectedClientTransactionsMessageTest.java | 67 ++ .../geode/internal/cache/TXManagerImplTest.java| 42 ++- 8 files changed, 185 insertions(+), 210 deletions(-) diff --git a/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/ClientServerTransactionFailoverDistributedTest.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/ClientServerTransactionFailoverDistributedTest.java index 1d6f413..b8908ea 100644 --- a/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/ClientServerTransactionFailoverDistributedTest.java +++ b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/ClientServerTransactionFailoverDistributedTest.java @@ -98,7 +98,7 @@ public class ClientServerTransactionFailoverDistributedTest implements Serializa int numOfOpertions = 5; createClientRegion(true, port2, port1); -TransactionId txId = suspendTransaction(numOfOpertions); +TransactionId txId = beginAndSuspendTransaction(numOfOpertions); server2.invoke(() -> { cacheRule.getCache().close(); }); @@ -162,7 +162,7 @@ public class ClientServerTransactionFailoverDistributedTest implements Serializa return (PoolImpl) factory.create(uniqueName); } - private TransactionId suspendTransaction(int numOfOperations) { + private TransactionId beginAndSuspendTransaction(int numOfOperations) { Region region = clientCacheRule.getClientCache().getRegion(regionName); TXManagerImpl txManager = (TXManagerImpl) clientCacheRule.getClientCache().getCacheTransactionManager(); @@ -237,8 +237,9 @@ public class ClientServerTransactionFailoverDistributedTest implements Serializa FutureTask[] futureTasks = new FutureTask[numOfTransactions]; TransactionId[] txIds = new TransactionId[numOfTransactions]; -// suspend transactions -suspendTransactions(numOfTransactions, numOfOperationsInTransaction, threads, futureTasks, +// begin and suspend transactions +beginAndSuspendTransactions(numOfTransactions, numOfOperationsInTransaction, threads, +futureTasks, txIds); // unregister client on 2 of the servers @@ -264,8 +265,8 @@ public class ClientServerTransactionFailoverDistributedTest implements Serializa FutureTask[] futureTasks = new FutureTask[numOfTransactions]; TransactionId[] txIds = new TransactionId[numOfTransactions]; -// suspend transactions -suspendTransactions(numOfTransactions, numOfOperations, threads, futureTasks, txIds); +// begin and suspend transactions +beginAndSuspendTransactions(numOfTransactions, numOfOperations, threads, futureTasks, txIds); // unregister client multiple times ClientProxyMembershipID clientProxyMembershipID = getClientId(); @@ -284,12 +285,13 @@ public class ClientServerTransactionFailoverDistributedTest implements Serializa } } - private void suspendTransactions(int numOfTransactions, int numOfOperations, Thread[] threads, + private void beginAndSuspendTransactions(int numOfTransactions, int numOfOperations, + Thread[] threads, FutureTask[] futureTasks, TransactionId[] txIds) throws InterruptedException, java.util.concurrent.ExecutionException { for (int i = 0; i < numOfTransactions; i++) { FutureTask futureTask = - new FutureTask<>(() -> suspendTransaction(numOfOperations)); + new FutureTask<>(() ->
[geode-native] branch develop updated: GEODE-5473 Docs page describing how to use the query api, update
This is an automated email from the ASF dual-hosted git repository. dbarnes pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode-native.git The following commit(s) were added to refs/heads/develop by this push: new 5f4bf9f GEODE-5473 Docs page describing how to use the query api, update 5f4bf9f is described below commit 5f4bf9f48c846f4c009eb3dd72fb95d20749e2b2 Author: Dave Barnes AuthorDate: Thu Jul 26 16:19:34 2018 -0700 GEODE-5473 Docs page describing how to use the query api, update --- .../remote-querying/remote-queries.html.md.erb | 115 ++--- 1 file changed, 34 insertions(+), 81 deletions(-) diff --git a/docs/geode-native-docs/remote-querying/remote-queries.html.md.erb b/docs/geode-native-docs/remote-querying/remote-queries.html.md.erb index c876058..8d72ff3 100644 --- a/docs/geode-native-docs/remote-querying/remote-queries.html.md.erb +++ b/docs/geode-native-docs/remote-querying/remote-queries.html.md.erb @@ -1,5 +1,5 @@ --- -title: Remote Queries +title: Remote Queries --- -Use the client query API to query your cached data stored on a cache server. The query is evaluated -and executed on the cache server, and the results are returned to the client. +Use the client query API to query your cached data stored on a cache server. -You can also optimize your queries by defining indexes on the cache server. +## Remote Query Basics -## Remote Query Basics +Queries are evaluated and executed on the cache server, and the results are returned to the client. +You can optimize your queries by defining indexes on the cache server. -The query language for the native client is essentially a subset of OQL (ODMG 3.0 Object Data -Management Group, [http://www.odmg.org](http://www.odmg.org).), which is based on SQL-92. OQL is a -SQL-like language with extended functionality for querying complex objects, object attributes, and -methods. +Querying and indexing operate only on remote cache server contents. -This section assumes that you have general familiarity with SQL querying and indexing, and with the information on the client cache. +### Query language: OQL +<%=vars.product_name%> provides a SQL-like querying language called OQL that allows you to access data stored in <%=vars.product_name%> regions. + +<%=vars.product_name%> uses a query syntax based on OQL (Object Query Language) to query region +data. OQL is very similar to SQL, but OQL allows you to query complex objects, object attributes, +and methods. Query language features and grammar are described in the <%=vars.product_name%> manual at [Querying](geodeman/developing/querying_basics/chapter_overview.html). This section describes areas that are unique to the native client. -### Connection Pool - -If you are using the pool API, you should obtain the QueryService from the pool. - -### Executing a Query from the Client - -- If you are using the C++ client, get a pointer to the `QueryService` method. -- Create a `QueryPtr` to a query (C++) or create a query instance (.NET) that is compatible with the OQL specification. -- Use the `execute` method for the `Query` interface to submit the query string to the cache server. The server remotely evaluates the query string and returns the results to the client. -- You can iterate through the returned objects as part of the query process. - -## Remote Querying Requirements - -### Using Region Endpoints - -When you are using region endpoints, at least one region must exist on the client before a query can -be executed through the client. All objects in the region belong to the same class hierarchy -(homogenous types). +## Remote Query API -### Setting Server Region Data Policy and Scope +This section gives a general overview of the interfaces and classes that are provided by the Query +package API, and the shortcut methods provided in the Region interface. -Remote querying accesses only the data that is available in the remote cache server region. -Depending on the cache server region's scope and data-policy attribute settings, this could mean -that your queries and indexes see only a part of the data available for the server region in the -distributed cache. +### Creating and Managing Queries -To ensure a complete data set for your queries and indexes, your cache server region must use one of -the REPLICATE region shortcut settings in the region attribute refid or it must explicitly have its -data policy set to `replicate` or `persistent-replicate`. Without replication, some server cache entries may not be available. +You create queries on the cache server by obtaining a `QueryService` method and manage them through +the resulting `Query` object. The `Region` interface has several shortcut query methods. -Depending on your use of the server cache, the non-global distributed scopes `distributed-ack` and -`distributed-no-ack` may encounter race conditions during entry
[geode] branch develop updated: GEODE-5476: Fixes pr-pipeline docker image prefix.
This is an automated email from the ASF dual-hosted git repository. jbarrett pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/develop by this push: new 680ab16 GEODE-5476: Fixes pr-pipeline docker image prefix. 680ab16 is described below commit 680ab16ab2448efab2f59454244c4257e07e9b6c Author: Robert Houghton AuthorDate: Thu Jul 26 15:36:15 2018 -0700 GEODE-5476: Fixes pr-pipeline docker image prefix. --- ci/pipelines/pull-request/deploy_pr_pipeline.sh | 10 ++ 1 file changed, 10 insertions(+) diff --git a/ci/pipelines/pull-request/deploy_pr_pipeline.sh b/ci/pipelines/pull-request/deploy_pr_pipeline.sh index 317decc..6a122e9 100755 --- a/ci/pipelines/pull-request/deploy_pr_pipeline.sh +++ b/ci/pipelines/pull-request/deploy_pr_pipeline.sh @@ -86,9 +86,19 @@ TEAM=${CONCOURSE_TEAM} # TEAM="main" #fi +if [[ "${GEODE_FORK}" == "apache" ]]; then + PIPELINE_PREFIX="" + DOCKER_IMAGE_PREFIX="" +else + PIPELINE_PREFIX="${GEODE_FORK}-${SANITIZED_GEODE_BRANCH}-" + DOCKER_IMAGE_PREFIX=${PIPELINE_PREFIX} +fi + fly login -t ${TARGET} -n ${TEAM} -c https://concourse.apachegeode-ci.info -u ${CONCOURSE_USERNAME} -p ${CONCOURSE_PASSWORD} fly -t ${TARGET} set-pipeline \ --non-interactive \ --pipeline pr-${SANITIZED_GEODE_BRANCH} \ --config ${TMP_DIR}/final.yml \ + --var docker-image-prefix=${DOCKER_IMAGE_PREFIX} \ --var concourse-team=${TEAM} +
[geode] branch develop updated: GEODE-5476: Fixes pr-pipeline deployment name.
This is an automated email from the ASF dual-hosted git repository. jbarrett pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/develop by this push: new 5f52f3f GEODE-5476: Fixes pr-pipeline deployment name. 5f52f3f is described below commit 5f52f3f88e90d74c830dceb18a5985a9f48db89b Author: Robert Houghton AuthorDate: Thu Jul 26 15:33:03 2018 -0700 GEODE-5476: Fixes pr-pipeline deployment name. --- ci/pipelines/pull-request/deploy_pr_pipeline.sh | 12 +--- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/ci/pipelines/pull-request/deploy_pr_pipeline.sh b/ci/pipelines/pull-request/deploy_pr_pipeline.sh index 440828e..317decc 100755 --- a/ci/pipelines/pull-request/deploy_pr_pipeline.sh +++ b/ci/pipelines/pull-request/deploy_pr_pipeline.sh @@ -86,19 +86,9 @@ TEAM=${CONCOURSE_TEAM} # TEAM="main" #fi -if [[ "${GEODE_FORK}" == "apache" ]]; then - PIPELINE_PREFIX="" - DOCKER_IMAGE_PREFIX="" -else - PIPELINE_PREFIX="${GEODE_FORK}-${SANITIZED_GEODE_BRANCH}-" - DOCKER_IMAGE_PREFIX=${PIPELINE_PREFIX} -fi - fly login -t ${TARGET} -n ${TEAM} -c https://concourse.apachegeode-ci.info -u ${CONCOURSE_USERNAME} -p ${CONCOURSE_PASSWORD} fly -t ${TARGET} set-pipeline \ --non-interactive \ - --pipeline ${PIPELINE_PREFIX}pr \ + --pipeline pr-${SANITIZED_GEODE_BRANCH} \ --config ${TMP_DIR}/final.yml \ - --var docker-image-prefix=${DOCKER_IMAGE_PREFIX} \ --var concourse-team=${TEAM} -
[geode] branch feature/GEODE-5212 updated: more debugging
This is an automated email from the ASF dual-hosted git repository. jensdeppe pushed a commit to branch feature/GEODE-5212 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/GEODE-5212 by this push: new 6e800b6 more debugging 6e800b6 is described below commit 6e800b6ef0b921db2929e202693786c7dd50a6e3 Author: Jens Deppe AuthorDate: Thu Jul 26 15:29:32 2018 -0700 more debugging --- .../main/java/org/apache/geode/internal/cache/backup/RestoreScript.java | 2 +- .../org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/backup/RestoreScript.java b/geode-core/src/main/java/org/apache/geode/internal/cache/backup/RestoreScript.java index 2ee42a9..799194e 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/backup/RestoreScript.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/backup/RestoreScript.java @@ -124,7 +124,7 @@ class RestoreScript { String[] backupFiles = backup.list(); boolean backupHasFiles = backup.isDirectory() && backupFiles != null && backupFiles.length != 0; -// backup = outputDir.relativize(backup.toPath()).toFile(); + // backup = outputDir.relativize(backup.toPath()).toFile(); File original = entry.getValue(); if (original.isDirectory()) { generator.writeCopyDirectoryContents(writer, backup, original, backupHasFiles); diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java b/geode-core/src/main/java/org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java index f89f20c..abc36ec 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java @@ -39,7 +39,7 @@ class WindowsScriptGenerator implements ScriptGenerator { writer.newLine(); writer.write(CD_TO_SCRIPT_DIR); writer.newLine(); -writer.write("dir"); +writer.write("dir /s"); writer.newLine(); }
[geode] branch feature/GEODE-5478 updated (18b9fd4 -> c93fafd)
This is an automated email from the ASF dual-hosted git repository. boglesby pushed a change to branch feature/GEODE-5478 in repository https://gitbox.apache.org/repos/asf/geode.git. omit 18b9fd4 GEODE-5478: Simplified low redundancy calculation omit 5bce16c GEODE-5478: Modified BucketRedundancyTracker to not increment low redundnancy bucket count twice add a3ddf3d GEODE-5212: Fix ExportLogsStatsDunit on windows (#2192) add a5ca0a0 GEODE-5463: Log executable used by BackupIntegrationTest add 9723637 [GEODE-5476] Refactor CI to use external instances for test execution. (#2198) add 37dc838 [GEODE-5476] Fix groups definition. add 233932c Merge pull request #2200 from smgoller/GEODE-5476-2 add c4a3d50 [GEODE-5476] pr-pipeline depends on different paths than the main. add dae3a46 Merge pull request #2201 from smgoller/GEODE-5476-3 add 9a0228a GEODE-5453: Fixes upgradeTest failures. add f31fd42 GEODE-5477 Fix distTomcat dependencies in geode assembly (#2194) add 28facd2 GEODE-5474: Fix test flakiness in DiskRegionAsyncRecoveryJUnitTest an… (#2187) add c328417 GEODE-5453: Make passing build depend on UpgradeTest job. add d00ab7c GEODE-5475: ClusterStartupRule improvement (#2193) add 0f765b9 GEODE-5476: Lower timeouts on pipeline jobs. add d79b74a Added protection for NPE in GemFireBasicDataSource with no credentials add 9f91611 Merge pull request #2185 from BenjaminPerryRoss/fix-npe-jndi-command-159205020 add 73ad622 User Guide: parameterize product name add 2310edf Reset CI job timeouts until PR pipeline is faster add ca8a240 GEODE-1942: Limiting random strings to alphanumeric add c73896a GEODE-5467: Remove chance of use same random port for JMX and http se… (#2199) new b4b3cc3 GEODE-5478: Modified BucketRedundancyTracker to not increment low redundnancy bucket count twice new 36dca4d GEODE-5478: Simplified low redundancy calculation new c93fafd GEODE-5478: Updated distributed test after rebase This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (18b9fd4) \ N -- N -- N refs/heads/feature/GEODE-5478 (c93fafd) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../base => ci/images/alpine-tools}/Dockerfile | 31 +++-- .../concourse-metadata-resource/Dockerfile}| 18 +-- .../images/concourse-metadata-resource/files/check | 16 ++- ci/images/concourse-metadata-resource/files/in | 48 +++ .../images/concourse-metadata-resource/files/out | 16 ++- ci/images/google-geode-builder/build_image.sh | 23 +++- ci/images/google-geode-builder/packer.json | 13 +- .../scripts/cache_dependencies.sh | 1 - ci/images/google-geode-builder/scripts/setup.sh| 25 ++-- ci/pipelines/clean_fork_pipelines.sh | 58 ci/pipelines/deploy_meta.sh| 2 +- ci/pipelines/geode-build/base.yml | 153 - ci/pipelines/geode-build/deploy_pipeline.sh| 2 +- ci/pipelines/geode-build/test-stubs/acceptance.yml | 8 +- .../{integration.yml => distributed.yml} | 13 +- .../geode-build/test-stubs/integration.yml | 8 +- ci/pipelines/geode-build/test-stubs/ui.yml | 12 +- .../test-stubs/{integration.yml => upgrade.yml}| 17 ++- ci/pipelines/geode-build/test-template.yml | 135 -- ci/pipelines/images/deploy_images_pipeline.sh | 2 +- ci/pipelines/images/images.yml | 84 ++- ci/pipelines/meta.yml | 14 +- ci/pipelines/pull-request/base.yml | 2 +- ci/pipelines/pull-request/deploy_pr_pipeline.sh| 2 +- ci/scripts/{test-archive.sh => archive_results.sh} | 66 + ci/scripts/capture-call-stacks.sh | 27 +++- ci/scripts/execute_tests.sh| 79 +++ .../prepopulate_build.sh} | 28 +++- .../build_image.sh => scripts/rsync_code_down.sh} | 23 +++- .../build_image.sh => scripts/rsync_code_up.sh}| 23 +++- ci/scripts/start_instance.sh
[geode] 03/03: GEODE-5478: Updated distributed test after rebase
This is an automated email from the ASF dual-hosted git repository. boglesby pushed a commit to branch feature/GEODE-5478 in repository https://gitbox.apache.org/repos/asf/geode.git commit c93fafd93e090d8ed280bfd02c8759e760a3cc7b Author: Barry Oglesby AuthorDate: Thu Jul 26 15:20:57 2018 -0700 GEODE-5478: Updated distributed test after rebase --- .../cache/PartitionedRegionLowBucketRedundancyDistributedTest.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java index 5a27b15..e87fbd8 100644 --- a/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java +++ b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java @@ -75,7 +75,7 @@ public class PartitionedRegionLowBucketRedundancyDistributedTest implements Seri server2.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); // Stop server2 -server2.stopMember(false); +server2.stop(false); // Verify lowBucketRedundancyCount == 113 in server1 server1.getVM().invoke(() -> waitForLowBucketRedundancyCount(113)); @@ -143,8 +143,8 @@ public class PartitionedRegionLowBucketRedundancyDistributedTest implements Seri server4.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); // Stop servers 1 and 2 -server1.stopMember(false); -server2.stopMember(false); +server1.stop(false); +server2.stop(false); server3.getVM().invoke(() -> waitForMembers(1)); server4.getVM().invoke(() -> waitForMembers(1));
[geode] 01/03: GEODE-5478: Modified BucketRedundancyTracker to not increment low redundnancy bucket count twice
This is an automated email from the ASF dual-hosted git repository. boglesby pushed a commit to branch feature/GEODE-5478 in repository https://gitbox.apache.org/repos/asf/geode.git commit b4b3cc34ffc0bdcfbd0461cf0b8da642251bea7f Author: Barry Oglesby AuthorDate: Thu Jul 26 10:37:39 2018 -0700 GEODE-5478: Modified BucketRedundancyTracker to not increment low redundnancy bucket count twice --- ...edRegionLowBucketRedundancyDistributedTest.java | 196 + .../internal/cache/BucketRedundancyTracker.java| 2 +- .../cache/BucketRedundancyTrackerTest.java | 23 +++ 3 files changed, 220 insertions(+), 1 deletion(-) diff --git a/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java new file mode 100644 index 000..979937b --- /dev/null +++ b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java @@ -0,0 +1,196 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more contributor license + * agreements. See the NOTICE file distributed with this work for additional information regarding + * copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance with the License. You may obtain a + * copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software distributed under the License + * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing permissions and limitations under + * the License. + */ +package org.apache.geode.internal.cache; + +import static org.apache.geode.cache.RegionShortcut.PARTITION; +import static org.apache.geode.cache.RegionShortcut.PARTITION_PERSISTENT; +import static org.assertj.core.api.Assertions.assertThat; + +import java.io.Serializable; +import java.util.concurrent.TimeUnit; + +import org.awaitility.Awaitility; +import org.junit.Before; +import org.junit.Rule; +import org.junit.Test; + +import org.apache.geode.cache.PartitionAttributesFactory; +import org.apache.geode.cache.Region; +import org.apache.geode.cache.RegionShortcut; +import org.apache.geode.test.dunit.AsyncInvocation; +import org.apache.geode.test.dunit.rules.ClusterStartupRule; +import org.apache.geode.test.dunit.rules.MemberVM; +import org.apache.geode.test.junit.rules.serializable.SerializableTestName; + +public class PartitionedRegionLowBucketRedundancyDistributedTest implements Serializable { + + public String regionName; + + @Rule + public ClusterStartupRule startupRule = new ClusterStartupRule(); + + @Rule + public SerializableTestName testName = new SerializableTestName(); + + @Before + public void setUp() { +regionName = testName.getMethodName() + "_region"; + } + + @Test + public void testTwoServersWithOneRedundantCopy() throws Exception { +// Start locator +MemberVM locator = startupRule.startLocatorVM(0); +int locatorPort = locator.getPort(); + +// Start server1 and create region +MemberVM server1 = startServerAndCreateRegion(1, locatorPort, PARTITION, 1); + +// Do puts in server1 +server1.getVM().invoke(() -> doPuts(500)); + +// Verify lowBucketRedundancyCount == 113 in server1 +server1.getVM().invoke(() -> waitForLowBucketRedundancyCount(113)); + +// Start server2 and create region +MemberVM server2 = startServerAndCreateRegion(2, locatorPort, PARTITION, 1); + +// Verify lowBucketRedundancyCount == 0 in both servers +server1.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); +server2.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); + +// Stop server2 +server2.stopMember(false); + +// Verify lowBucketRedundancyCount == 113 in server1 +server1.getVM().invoke(() -> waitForLowBucketRedundancyCount(113)); + } + + @Test + public void testThreeServersWithTwoRedundantCopies() throws Exception { +// Start locator +MemberVM locator = startupRule.startLocatorVM(0); +int locatorPort = locator.getPort(); + +// Start server1 and create region +MemberVM server1 = startServerAndCreateRegion(1, locatorPort, PARTITION, 2); + +// Do puts in server1 +server1.getVM().invoke(() -> doPuts(500)); + +// Verify lowBucketRedundancyCount == 113 in server1 +server1.getVM().invoke(() -> waitForLowBucketRedundancyCount(113)); + +// Start server2 and create region +MemberVM server2 = startServerAndCreateRegion(2, locatorPort, PARTITION, 2); + +// Verify lowBucketRedundancyCount == 113 in both servers +server1.getVM().invoke(() ->
[geode] branch feature/GEODE-5478 updated: GEODE-5478: Simplified low redundancy calculation
This is an automated email from the ASF dual-hosted git repository. boglesby pushed a commit to branch feature/GEODE-5478 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/GEODE-5478 by this push: new 18b9fd4 GEODE-5478: Simplified low redundancy calculation 18b9fd4 is described below commit 18b9fd47fcd21ab9eb3bf0d2d325f9871e5453a8 Author: Barry Oglesby AuthorDate: Thu Jul 26 14:33:45 2018 -0700 GEODE-5478: Simplified low redundancy calculation Co-authored-by: Darrel Schneider --- ...edRegionLowBucketRedundancyDistributedTest.java | 12 .../internal/cache/BucketRedundancyTracker.java| 69 +- .../cache/BucketRedundancyTrackerTest.java | 9 +-- 3 files changed, 55 insertions(+), 35 deletions(-) diff --git a/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java index 979937b..5a27b15 100644 --- a/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java +++ b/geode-core/src/distributedTest/java/org/apache/geode/internal/cache/PartitionedRegionLowBucketRedundancyDistributedTest.java @@ -58,6 +58,9 @@ public class PartitionedRegionLowBucketRedundancyDistributedTest implements Seri // Start server1 and create region MemberVM server1 = startServerAndCreateRegion(1, locatorPort, PARTITION, 1); +// Verify lowBucketRedundancyCount == 0 in server1 +server1.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); + // Do puts in server1 server1.getVM().invoke(() -> doPuts(500)); @@ -87,6 +90,9 @@ public class PartitionedRegionLowBucketRedundancyDistributedTest implements Seri // Start server1 and create region MemberVM server1 = startServerAndCreateRegion(1, locatorPort, PARTITION, 2); +// Verify lowBucketRedundancyCount == 0 in server1 +server1.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); + // Do puts in server1 server1.getVM().invoke(() -> doPuts(500)); @@ -121,6 +127,12 @@ public class PartitionedRegionLowBucketRedundancyDistributedTest implements Seri MemberVM server3 = startServerAndCreateRegion(3, locatorPort, PARTITION_PERSISTENT, 1); MemberVM server4 = startServerAndCreateRegion(4, locatorPort, PARTITION_PERSISTENT, 1); +// Verify lowBucketRedundancyCount == 0 in all servers +server1.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); +server2.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); +server3.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); +server4.getVM().invoke(() -> waitForLowBucketRedundancyCount(0)); + // Do puts in server1 server1.getVM().invoke(() -> doPuts(500)); diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRedundancyTracker.java b/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRedundancyTracker.java index 20d2f9e..f7340a0 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRedundancyTracker.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRedundancyTracker.java @@ -19,10 +19,11 @@ package org.apache.geode.internal.cache; * {@link PartitionedRegionRedundancyTracker} of the bucket's status for the region. */ class BucketRedundancyTracker { - private boolean redundancySatisfied = false; - private boolean hasAnyCopies = false; + // if true decrement allowed; if false increment allowed + private boolean noCopiesDecrementOkay = false; + // if true decrement allowed; if false increment allowed + private boolean lowRedundancyDecrementOkay = false; private boolean redundancyEverSatisfied = false; - private boolean hasEverHadCopies = false; private volatile int currentRedundancy = -1; private final int targetRedundancy; private final PartitionedRegionRedundancyTracker regionRedundancyTracker; @@ -45,14 +46,8 @@ class BucketRedundancyTracker { * Adjust statistics based on closing a bucket */ synchronized void closeBucket() { -if (!redundancySatisfied) { - regionRedundancyTracker.decrementLowRedundancyBucketCount(); - redundancySatisfied = true; -} -if (hasEverHadCopies && !hasAnyCopies) { - regionRedundancyTracker.decrementNoCopiesBucketCount(); - hasAnyCopies = true; -} +decrementLowRedundancy(); +decrementNoCopies(); } /** @@ -76,37 +71,53 @@ class BucketRedundancyTracker { } private void updateNoCopiesStatistics(int currentBucketHosts) { -if (hasAnyCopies && currentBucketHosts == 0) { - hasAnyCopies = false; +if (currentBucketHosts == 0) { + incrementNoCopies(); +} else if (currentBucketHosts > 0) { + decrementNoCopies(); +} + }
[geode] branch develop updated: GEODE-1942: Limiting random strings to alphanumeric
This is an automated email from the ASF dual-hosted git repository. upthewaterspout pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/develop by this push: new ca8a240 GEODE-1942: Limiting random strings to alphanumeric ca8a240 is described below commit ca8a24000a2f5c9e58f7bed7997abb0c46d43159 Author: Dan Smith AuthorDate: Thu Jul 26 13:49:03 2018 -0700 GEODE-1942: Limiting random strings to alphanumeric This test was generating random strings, but some strings were invalid regions names, for example strings starting with __. Limiting the strings the alphabet. --- .../java/org/apache/geode/redis/HashesJUnitTest.java| 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/geode-core/src/integrationTest/java/org/apache/geode/redis/HashesJUnitTest.java b/geode-core/src/integrationTest/java/org/apache/geode/redis/HashesJUnitTest.java index cb73026..151af35 100755 --- a/geode-core/src/integrationTest/java/org/apache/geode/redis/HashesJUnitTest.java +++ b/geode-core/src/integrationTest/java/org/apache/geode/redis/HashesJUnitTest.java @@ -29,6 +29,7 @@ import java.util.Map; import java.util.Random; import java.util.Set; +import org.apache.commons.lang.RandomStringUtils; import org.junit.After; import org.junit.AfterClass; import org.junit.BeforeClass; @@ -170,10 +171,7 @@ public class HashesJUnitTest { private String randString() { int length = rand.nextInt(8) + 5; -StringBuilder rString = new StringBuilder(); -for (int i = 0; i < length; i++) - rString.append((char) (rand.nextInt(57) + 65)); -return rString.toString(); +return RandomStringUtils.randomAlphanumeric(length); } @After
[geode] branch feature/GEODE-5212 updated: use full path
This is an automated email from the ASF dual-hosted git repository. jensdeppe pushed a commit to branch feature/GEODE-5212 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/GEODE-5212 by this push: new 54b7c5f use full path 54b7c5f is described below commit 54b7c5f0ea34ed3470b29438dc389b5cf1f03551 Author: Jens Deppe AuthorDate: Thu Jul 26 13:35:14 2018 -0700 use full path --- .../main/java/org/apache/geode/internal/cache/backup/RestoreScript.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/backup/RestoreScript.java b/geode-core/src/main/java/org/apache/geode/internal/cache/backup/RestoreScript.java index b7069fe..2ee42a9 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/backup/RestoreScript.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/backup/RestoreScript.java @@ -124,7 +124,7 @@ class RestoreScript { String[] backupFiles = backup.list(); boolean backupHasFiles = backup.isDirectory() && backupFiles != null && backupFiles.length != 0; - backup = outputDir.relativize(backup.toPath()).toFile(); +// backup = outputDir.relativize(backup.toPath()).toFile(); File original = entry.getValue(); if (original.isDirectory()) { generator.writeCopyDirectoryContents(writer, backup, original, backupHasFiles);
[geode] branch develop updated: Reset CI job timeouts until PR pipeline is faster
This is an automated email from the ASF dual-hosted git repository. abaker pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/develop by this push: new 2310edf Reset CI job timeouts until PR pipeline is faster 2310edf is described below commit 2310edf4efa48151f97001871c5df49e1a8cf5d5 Author: Anthony Baker AuthorDate: Thu Jul 26 13:25:55 2018 -0700 Reset CI job timeouts until PR pipeline is faster --- ci/pipelines/geode-build/test-stubs/distributed.yml | 4 ++-- ci/pipelines/geode-build/test-stubs/integration.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ci/pipelines/geode-build/test-stubs/distributed.yml b/ci/pipelines/geode-build/test-stubs/distributed.yml index fb76b46..e2aafc8 100644 --- a/ci/pipelines/geode-build/test-stubs/distributed.yml +++ b/ci/pipelines/geode-build/test-stubs/distributed.yml @@ -27,6 +27,6 @@ metadata: # specified in Gigabytes. ram: 210 # specified in seconds -call_stack_timeout: 5400 -timeout: 2h +call_stack_timeout: 25200 +timeout: 8h size: [] diff --git a/ci/pipelines/geode-build/test-stubs/integration.yml b/ci/pipelines/geode-build/test-stubs/integration.yml index df921a4..e2a4282 100644 --- a/ci/pipelines/geode-build/test-stubs/integration.yml +++ b/ci/pipelines/geode-build/test-stubs/integration.yml @@ -26,6 +26,6 @@ metadata: # specified in Gigabytes. ram: 30 # specified in seconds -call_stack_timeout: 7200 -timeout: 3h +call_stack_timeout: 25200 +timeout: 8h size: []
[geode] branch feature/GEODE-5212 updated: Because Windows...
This is an automated email from the ASF dual-hosted git repository. jensdeppe pushed a commit to branch feature/GEODE-5212 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/GEODE-5212 by this push: new 5e595d7 Because Windows... 5e595d7 is described below commit 5e595d769e9fc1d51118d4621e9b58b289c273e7 Author: Jens Deppe AuthorDate: Thu Jul 26 11:56:17 2018 -0700 Because Windows... --- .../geode/internal/cache/backup/BackupIntegrationTest.java | 13 - 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java b/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java index 9960421..859d3fd 100644 --- a/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java +++ b/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java @@ -391,12 +391,15 @@ public class BackupIntegrationTest { scriptContent.forEach(i -> System.out.println("CONTENT: " + i)); boolean isWindows = script.getName().endsWith("bat"); -// if (isWindows) { -// command.add("cmd.exe"); -// command.add("/c"); -// } +if (isWindows) { + command.add("cmd.exe"); + command.add("/c"); + command.add(String.format("cd /d %s && %s", + script.getCanonicalFile().toPath().getParent().toString(), script.getCanonicalPath())); +} else { + command.add(script.getCanonicalPath()); +} -command.add(script.getCanonicalPath()); ProcessBuilder pb = new ProcessBuilder(command); pb.redirectErrorStream(true); Process process = pb.start();
[geode] branch feature/GEODE-5212 updated: Does the restore.bat script really need cmd.exe?
This is an automated email from the ASF dual-hosted git repository. jensdeppe pushed a commit to branch feature/GEODE-5212 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/GEODE-5212 by this push: new b2d94f1 Does the restore.bat script really need cmd.exe? b2d94f1 is described below commit b2d94f1df791017e1a5225dd4aa6bca06e648ed9 Author: Jens Deppe AuthorDate: Thu Jul 26 11:21:05 2018 -0700 Does the restore.bat script really need cmd.exe? --- .../apache/geode/internal/cache/backup/BackupIntegrationTest.java | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java b/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java index 0a2b6ce..9960421 100644 --- a/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java +++ b/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java @@ -391,10 +391,10 @@ public class BackupIntegrationTest { scriptContent.forEach(i -> System.out.println("CONTENT: " + i)); boolean isWindows = script.getName().endsWith("bat"); -if (isWindows) { - command.add("cmd.exe"); - command.add("/c"); -} +// if (isWindows) { +// command.add("cmd.exe"); +// command.add("/c"); +// } command.add(script.getCanonicalPath()); ProcessBuilder pb = new ProcessBuilder(command);
[geode] branch feature/GEODE-5212 updated: List directory contents
This is an automated email from the ASF dual-hosted git repository. jensdeppe pushed a commit to branch feature/GEODE-5212 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/GEODE-5212 by this push: new 59167bd List directory contents 59167bd is described below commit 59167bd78fec4335993cd4713acaa2a0cb402f3b Author: Jens Deppe AuthorDate: Thu Jul 26 11:06:24 2018 -0700 List directory contents --- .../org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java b/geode-core/src/main/java/org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java index 747e14d..f89f20c 100644 --- a/geode-core/src/main/java/org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java +++ b/geode-core/src/main/java/org/apache/geode/internal/cache/backup/WindowsScriptGenerator.java @@ -39,6 +39,8 @@ class WindowsScriptGenerator implements ScriptGenerator { writer.newLine(); writer.write(CD_TO_SCRIPT_DIR); writer.newLine(); +writer.write("dir"); +writer.newLine(); } @Override
[geode-examples] branch develop updated: Revert "Merge pull request #64 from dihardman/feature/GEODE-5414"
This is an automated email from the ASF dual-hosted git repository. upthewaterspout pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode-examples.git The following commit(s) were added to refs/heads/develop by this push: new cc10011 Revert "Merge pull request #64 from dihardman/feature/GEODE-5414" cc10011 is described below commit cc1001164941b4972d989dffdcd90a9222ec4c6f Author: Dan Smith AuthorDate: Thu Jul 26 10:38:06 2018 -0700 Revert "Merge pull request #64 from dihardman/feature/GEODE-5414" Reverting this merge of the WAN example because it fails ./gradlew runAll. This reverts commit 407298138a0c4d05dafcb9c78429f805bc565c22, reversing changes made to 2549e368e3125c19341f740a3c2bffd4e117a806. --- build.gradle | 6 - gradle/rat.gradle | 8 +- settings.gradle| 1 - wan/README.md | 125 - wan/scripts/start-ln.gfsh | 43 --- wan/scripts/start-ny.gfsh | 43 --- wan/scripts/start-wan.gfsh | 38 --- wan/scripts/start.gfsh | 30 - wan/scripts/stop.gfsh | 26 - .../org/apache/geode_examples/wan/Example.java | 61 -- 10 files changed, 1 insertion(+), 380 deletions(-) diff --git a/build.gradle b/build.gradle index 525b37e..e8e1db6 100644 --- a/build.gradle +++ b/build.gradle @@ -75,14 +75,8 @@ subprojects { task cleanServer { doLast { delete 'locator' -delete 'locator-ln' -delete 'locator-ny' delete 'server1' delete 'server2' -delete 'server-ln-1' -delete 'server-ln-2' -delete 'server-ny-1' -delete 'server-ny-2' } } clean.finalizedBy cleanServer diff --git a/gradle/rat.gradle b/gradle/rat.gradle index bc0c2ab..63e8d7b 100644 --- a/gradle/rat.gradle +++ b/gradle/rat.gradle @@ -64,13 +64,7 @@ rat { // working directories '**/locator/**', '**/server1/**', -'**/server2/**', -'**/locator-ln/**', -'**/server-ln-1/**', -'**/server-ln-2/**', -'**/locator-ny/**', -'**/server-ny-1/**', -'**/server-ny-2/**' +'**/server2/**' ] } diff --git a/settings.gradle b/settings.gradle index c283d8c..d5857ee 100644 --- a/settings.gradle +++ b/settings.gradle @@ -35,4 +35,3 @@ include 'serialization' include 'expiration' include 'indexes' include 'transaction' -include 'wan' diff --git a/wan/README.md b/wan/README.md deleted file mode 100644 index 3b05717..000 --- a/wan/README.md +++ /dev/null @@ -1,125 +0,0 @@ - - -# Geode WAN replication example - -This example demonstrates Geode support for asynchronous WAN -replication between clusters. WAN replication allows remote Geode -clusters to automatically keep their region data consistent through -the use of gateway senders and receivers. A gateway sender distributes -region events to another, remote Geode cluster. A gateway receiver -configures a physical connection for receiving region events from -gateway senders in remote Geode clusters. The gateway senders and -receivers can be configured in several different topologies based on -specific business needs. For more information on example topologies -and associated use cases see Geode documentation on -[Multi-site WAN Configuration](http://geode.apache.org/docs/guide/topologies_and_comm/multi_site_configuration/chapter_overview.html) - -In this example, two clusters are created on your local machine, each -with a unique distributed system id and the WAN gateway configured -for active-active, bidirectional region updates. The New York cluster (ny) -has id=1 and the London cluster (ln) has id=2. Each cluster contains the same -partitioned region (example-region) and each has parallel gateway senders, -which means each server in the cluster will send data updates for -the primary region buckets they hold. Alternately, you can configure -serial gateway senders, where only one server in each cluster sends all data -updates across the WAN. Serial gateway senders are typically used for -replicated regions or when the order of events between different keys in -a partitioned region needs to be preserved. - -This example runs a single client that connects to the London cluster and -puts 10 entries into the example-region and prints them. After the client -app has run, both clusters will contain the data. - -**Special Note** -The gfsh scripts and gradle tasks for this example do not follow the standard -used by other geode-examples in order to create 2 separate clusters. Due to -this, you must follow the steps outlined below, as this example will not -run using the runAll gradle task. - -This example assumes that
[geode] branch develop updated: User Guide: parameterize product name
This is an automated email from the ASF dual-hosted git repository. dbarnes pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/develop by this push: new 73ad622 User Guide: parameterize product name 73ad622 is described below commit 73ad622ffbb95099602f705a096776420f8426cb Author: Dave Barnes AuthorDate: Thu Jul 26 10:29:43 2018 -0700 User Guide: parameterize product name --- .../querying_basics/chapter_overview.html.md.erb | 15 +-- .../getting_started/querying_quick_reference.html.md.erb | 4 +++- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/geode-docs/developing/querying_basics/chapter_overview.html.md.erb b/geode-docs/developing/querying_basics/chapter_overview.html.md.erb index 5a7e08b..ac52b80 100644 --- a/geode-docs/developing/querying_basics/chapter_overview.html.md.erb +++ b/geode-docs/developing/querying_basics/chapter_overview.html.md.erb @@ -19,17 +19,20 @@ See the License for the specific language governing permissions and limitations under the License. --> -Geode provides a SQL-like querying language called OQL that allows you to access data stored in Geode regions. +<%=vars.product_name%> provides a SQL-like querying language called OQL that allows you to access data stored in <%=vars.product_name%> regions. -Since Geode regions are key-value stores where values can range from simple byte arrays to complex nested objects, Geode uses a query syntax based on OQL (Object Query Language) to query region data. OQL is very similar to SQL, but OQL allows you to query complex objects, object attributes, and methods. +Since <%=vars.product_name%> regions are key-value stores where values can range from simple byte arrays to complex +nested objects, <%=vars.product_name%> uses a query syntax based on OQL (Object Query Language) to query region +data. OQL is very similar to SQL, but OQL allows you to query complex objects, object attributes, +and methods. -- **[Geode Querying FAQ and Examples](../../getting_started/querying_quick_reference.html)** +- **[Querying FAQ and Examples](../../getting_started/querying_quick_reference.html)** -This topic answers some frequently asked questions on querying functionality. It provides examples to help you get started with Geode querying. +This topic answers some frequently asked questions on querying functionality. It provides examples to help you get started with <%=vars.product_name%> querying. - **[Querying with OQL](query_basics.html)** -This section provides a high-level introduction to Geode querying such as building a query string and describes query language features. +This section provides a high-level introduction to <%=vars.product_name%> querying such as building a query string and describes query language features. - **[Advanced Querying](../query_additional/advanced_querying.html)** @@ -37,5 +40,5 @@ Since Geode regions are key-value stores where values can range from simple byte - **[Working with Indexes](../query_index/query_index.html)** -The Geode query engine supports indexing. An index can provide significant performance gains for query execution. +The <%=vars.product_name%> query engine supports indexing. An index can provide significant performance gains for query execution. diff --git a/geode-docs/getting_started/querying_quick_reference.html.md.erb b/geode-docs/getting_started/querying_quick_reference.html.md.erb index 3f49737..f89826e 100644 --- a/geode-docs/getting_started/querying_quick_reference.html.md.erb +++ b/geode-docs/getting_started/querying_quick_reference.html.md.erb @@ -1,4 +1,6 @@ -<% set_title(product_name, "Querying FAQ and Examples")%> +--- +title: Querying FAQ and Examples +---
[geode] branch feature/GEODE-5212 updated: Add debug output for BackupIntegrationTest
This is an automated email from the ASF dual-hosted git repository. jensdeppe pushed a commit to branch feature/GEODE-5212 in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/feature/GEODE-5212 by this push: new 319ac30 Add debug output for BackupIntegrationTest 319ac30 is described below commit 319ac30fc8fcf7e6eeeb2477e825f2f7d5b1fa70 Author: Jens Deppe AuthorDate: Thu Jul 26 10:24:19 2018 -0700 Add debug output for BackupIntegrationTest --- ci/scripts/test-run.sh | 4 .../apache/geode/internal/cache/backup/BackupIntegrationTest.java| 5 + 2 files changed, 9 insertions(+) diff --git a/ci/scripts/test-run.sh b/ci/scripts/test-run.sh index 898edfe..916f879 100755 --- a/ci/scripts/test-run.sh +++ b/ci/scripts/test-run.sh @@ -145,6 +145,10 @@ pushd ${GEODE_BUILD} echo "Running tests" set -x + if [ "${GRADLE_TASK}" = "integrationTest" ]; then +GRADLE_TASK="geode-core:integrationTest --tests BackupIntegrationTest" + fi + #./gradlew --no-daemon -x javadoc -x spotlessCheck :geode-assembly:acceptanceTest --tests org.apache.geode.management.internal.cli.commands.PutCommandWithJsonTest ./gradlew ${PARALLEL_DUNIT} ${DUNIT_PARALLEL_FORKS} ${DUNIT_DOCKER_IMAGE} \ --system-prop "java.io.tmpdir=${TMPDIR}" ${DEFAULT_GRADLE_TASK_OPTIONS} ${GRADLE_TASK_OPTIONS} ${GRADLE_TASK} diff --git a/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java b/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java index 26f6b68..0a2b6ce 100644 --- a/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java +++ b/geode-core/src/integrationTest/java/org/apache/geode/internal/cache/backup/BackupIntegrationTest.java @@ -31,6 +31,7 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.net.URISyntaxException; import java.net.URL; +import java.nio.file.Files; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; @@ -385,6 +386,10 @@ public class BackupIntegrationTest { List command = new ArrayList<>(); System.out.println("EXECUTING:" + script.getCanonicalPath()); + +List scriptContent = Files.readAllLines(script.toPath()); +scriptContent.forEach(i -> System.out.println("CONTENT: " + i)); + boolean isWindows = script.getName().endsWith("bat"); if (isWindows) { command.add("cmd.exe");
[geode-native] branch develop updated: cmake install switched to 'latest'
This is an automated email from the ASF dual-hosted git repository. echobravo pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode-native.git The following commit(s) were added to refs/heads/develop by this push: new fae970a cmake install switched to 'latest' fae970a is described below commit fae970a9159d1a1c5509141ac9bd1ef665a970bd Author: Blake Bender AuthorDate: Thu Jul 26 17:13:32 2018 + cmake install switched to 'latest' Signed-off-by: Ivan Godwin --- packer/windows/install-dependencies.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packer/windows/install-dependencies.ps1 b/packer/windows/install-dependencies.ps1 index 81fb92d..95e3f9e 100644 --- a/packer/windows/install-dependencies.ps1 +++ b/packer/windows/install-dependencies.ps1 @@ -14,7 +14,7 @@ # limitations under the License. choco install jdk8 -confirm -choco install cmake.portable -version 3.11.4 -confirm +choco install cmake.portable -confirm choco install git.install -confirm choco install activeperl -confirm choco install doxygen.install --allowEmptyChecksums -confirm
[geode-examples] branch develop updated (2549e36 -> 4072981)
This is an automated email from the ASF dual-hosted git repository. kmiller pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode-examples.git. from 2549e36 Merge pull request #63 from apache/feature/overflow-example add faee332 GEODE-5414: Adding WAN example. add 24cc2f5 Added wan/scripts/start.gfsh to be used by runAll add 5f0cda9 Updated README based on feedback. Removed pdx read-serialized=true from start scripts. add eed2d06 Fixed link to WAN documentation. new 4072981 Merge pull request #64 from dihardman/feature/GEODE-5414 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: build.gradle | 6 + gradle/rat.gradle | 8 +- settings.gradle| 1 + wan/README.md | 125 + wan/scripts/start-ln.gfsh | 43 +++ wan/scripts/start-ny.gfsh | 43 +++ .../start.gfsh => wan/scripts/start-wan.gfsh | 21 ++-- {putall => wan}/scripts/start.gfsh | 16 ++- {persistence => wan}/scripts/stop.gfsh | 8 +- .../org/apache/geode_examples/wan}/Example.java| 6 +- 10 files changed, 259 insertions(+), 18 deletions(-) create mode 100644 wan/README.md create mode 100644 wan/scripts/start-ln.gfsh create mode 100644 wan/scripts/start-ny.gfsh copy overflow/scripts/start.gfsh => wan/scripts/start-wan.gfsh (57%) copy {putall => wan}/scripts/start.gfsh (73%) mode change 100755 => 100644 copy {persistence => wan}/scripts/stop.gfsh (84%) copy {replicated/src/main/java/org/apache/geode_examples/replicated => wan/src/main/java/org/apache/geode_examples/wan}/Example.java (94%)
[geode] branch develop updated (0f765b9 -> 9f91611)
This is an automated email from the ASF dual-hosted git repository. jchen21 pushed a change to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git. from 0f765b9 GEODE-5476: Lower timeouts on pipeline jobs. add d79b74a Added protection for NPE in GemFireBasicDataSource with no credentials new 9f91611 Merge pull request #2185 from BenjaminPerryRoss/fix-npe-jndi-command-159205020 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../datasource/GemFireBasicDataSource.java | 16 - .../GemFireBasicDataSourceJUnitTest.java | 73 ++ .../geode/internal/datasource/TestDriver.java} | 68 ++-- 3 files changed, 106 insertions(+), 51 deletions(-) create mode 100644 geode-core/src/test/java/org/apache/geode/internal/datasource/GemFireBasicDataSourceJUnitTest.java copy geode-core/src/{main/java/org/apache/geode/internal/cache/eviction/DisabledEvictionCounters.java => test/java/org/apache/geode/internal/datasource/TestDriver.java} (50%)
[geode] 01/01: Merge pull request #2185 from BenjaminPerryRoss/fix-npe-jndi-command-159205020
This is an automated email from the ASF dual-hosted git repository. jchen21 pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git commit 9f91611407863e30a0131fc85aa6905b3c886318 Merge: 0f765b9 d79b74a Author: Jianxia Chen AuthorDate: Thu Jul 26 09:44:34 2018 -0700 Merge pull request #2185 from BenjaminPerryRoss/fix-npe-jndi-command-159205020 GEODE-5450: Added protection for NPE in GemFireBasicDataSource with no credentials .../datasource/GemFireBasicDataSource.java | 16 - .../GemFireBasicDataSourceJUnitTest.java | 73 ++ .../geode/internal/datasource/TestDriver.java | 62 ++ 3 files changed, 148 insertions(+), 3 deletions(-)
[geode] branch develop updated: GEODE-5476: Lower timeouts on pipeline jobs.
This is an automated email from the ASF dual-hosted git repository. jbarrett pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/develop by this push: new 0f765b9 GEODE-5476: Lower timeouts on pipeline jobs. 0f765b9 is described below commit 0f765b98b4ea03180e9df6c3415247d377d5eb67 Author: Jacob Barrett AuthorDate: Thu Jul 26 09:37:52 2018 -0700 GEODE-5476: Lower timeouts on pipeline jobs. --- ci/pipelines/geode-build/test-stubs/distributed.yml | 4 ++-- ci/pipelines/geode-build/test-stubs/upgrade.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ci/pipelines/geode-build/test-stubs/distributed.yml b/ci/pipelines/geode-build/test-stubs/distributed.yml index 6a4c42d..fb76b46 100644 --- a/ci/pipelines/geode-build/test-stubs/distributed.yml +++ b/ci/pipelines/geode-build/test-stubs/distributed.yml @@ -27,6 +27,6 @@ metadata: # specified in Gigabytes. ram: 210 # specified in seconds -call_stack_timeout: 7200 -timeout: 3h +call_stack_timeout: 5400 +timeout: 2h size: [] diff --git a/ci/pipelines/geode-build/test-stubs/upgrade.yml b/ci/pipelines/geode-build/test-stubs/upgrade.yml index 4e94b4e..5ecca65 100644 --- a/ci/pipelines/geode-build/test-stubs/upgrade.yml +++ b/ci/pipelines/geode-build/test-stubs/upgrade.yml @@ -27,6 +27,6 @@ metadata: # specified in Gigabytes. ram: 210 # specified in seconds -call_stack_timeout: 3600 -timeout: 2h +call_stack_timeout: 3000 +timeout: 1h size: []
[geode] branch develop updated: GEODE-5475: ClusterStartupRule improvement (#2193)
This is an automated email from the ASF dual-hosted git repository. jinmeiliao pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/develop by this push: new d00ab7c GEODE-5475: ClusterStartupRule improvement (#2193) d00ab7c is described below commit d00ab7cebc938dfd89f60a5a1e39126771457cbe Author: jinmeiliao AuthorDate: Thu Jul 26 07:51:42 2018 -0700 GEODE-5475: ClusterStartupRule improvement (#2193) * add more convenience methods to startClientVM * rename stopMember to stop and push the implementation to VMProvider * rename forceDisconnectMember to forceDisconnect --- .../cli/JdbcClusterConfigDistributedTest.java | 2 +- .../management/JMXMBeanReconnectDUnitTest.java | 8 +-- .../internal/JMXMBeanFederationDUnitTest.java | 2 +- .../AlterAsyncEventQueueCommandDUnitTest.java | 4 +- .../cli/commands/AlterCompressorDUnitTest.java | 12 ++--- .../cli/commands/AlterDiskStoreDUnitTest.java | 4 +- .../CreateJndiBindingCommandDUnitTest.java | 2 +- .../commands/DeployCommandRedeployDUnitTest.java | 2 +- .../DestroyJndiBindingCommandDUnitTest.java| 2 +- .../commands/DestroyRegionCommandDUnitTest.java| 2 +- .../cli/commands/DiskStoreCommandsDUnitTest.java | 8 +-- .../IndexCommandsShareConfigurationDUnitTest.java | 2 +- ...ersistThroughClusterConfigurationDUnitTest.java | 6 +-- .../commands/RegionMembershipMBeanDUnitTest.java | 4 +- .../commands/ShowMissingDiskStoresDUnitTest.java | 4 +- .../ClusterConfigLocatorRestartDUnitTest.java | 6 +-- .../ImportClusterConfigDistributedTest.java| 4 +- .../ImportOldClusterConfigDUnitTest.java | 2 +- ...onUsingLegacySecurityWithFailoverDUnitTest.java | 8 +-- .../apache/geode/test/dunit/rules/ClientVM.java| 4 +- .../geode/test/dunit/rules/ClusterStartupRule.java | 58 -- .../apache/geode/test/dunit/rules/MemberVM.java| 26 +- .../apache/geode/test/junit/rules/VMProvider.java | 25 +- .../geode/test/dunit/DistributedTestUtils.java | 4 +- .../geode/test/junit/rules/MemberStarterRule.java | 11 +++- .../cli/commands/ListClientCommandDUnitTest.java | 6 +-- ...rConfigurationIndexWithFromClauseDUnitTest.java | 6 +-- 27 files changed, 119 insertions(+), 105 deletions(-) diff --git a/geode-connectors/src/distributedTest/java/org/apache/geode/connectors/jdbc/internal/cli/JdbcClusterConfigDistributedTest.java b/geode-connectors/src/distributedTest/java/org/apache/geode/connectors/jdbc/internal/cli/JdbcClusterConfigDistributedTest.java index df0b028..476a270 100644 --- a/geode-connectors/src/distributedTest/java/org/apache/geode/connectors/jdbc/internal/cli/JdbcClusterConfigDistributedTest.java +++ b/geode-connectors/src/distributedTest/java/org/apache/geode/connectors/jdbc/internal/cli/JdbcClusterConfigDistributedTest.java @@ -63,7 +63,7 @@ public class JdbcClusterConfigDistributedTest { validateRegionMapping(service.getMappingForRegion("regionName")); }); -server.stopMember(false); +server.stop(false); server = cluster.startServerVM(1, locator.getPort()); server.invoke(() -> { diff --git a/geode-core/src/distributedTest/java/org/apache/geode/management/JMXMBeanReconnectDUnitTest.java b/geode-core/src/distributedTest/java/org/apache/geode/management/JMXMBeanReconnectDUnitTest.java index e5c598e..21494ee 100644 --- a/geode-core/src/distributedTest/java/org/apache/geode/management/JMXMBeanReconnectDUnitTest.java +++ b/geode-core/src/distributedTest/java/org/apache/geode/management/JMXMBeanReconnectDUnitTest.java @@ -101,7 +101,7 @@ public class JMXMBeanReconnectDUnitTest { public void testLocalBeans_MaintainServerAndCrashLocator() { List initialServerBeans = canonicalBeanNamesFor(server1); -locator1.forceDisconnectMember(); +locator1.forceDisconnect(); List intermediateServerBeans = canonicalBeanNamesFor(server1); @@ -120,7 +120,7 @@ public class JMXMBeanReconnectDUnitTest { public void testLocalBeans_MaintainLocatorAndCrashServer() { List initialLocatorBeans = canonicalBeanNamesFor(locator1); -server1.forceDisconnectMember(); +server1.forceDisconnect(); List intermediateLocatorBeans = canonicalBeanNamesFor(locator1); @@ -146,7 +146,7 @@ public class JMXMBeanReconnectDUnitTest { assertThat(initialLocator1GemfireBeans) .containsExactlyElementsOf(initialLocator2GemfireBeans); -locator1.forceDisconnectMember(); +locator1.forceDisconnect(); List intermediateLocator2GemfireBeans = getFederatedGemfireBeansFrom(locator2); @@ -184,7 +184,7 @@ public class JMXMBeanReconnectDUnitTest { assertThat(initialLocator1GemfireBeans) .containsExactlyElementsOf(initialLocator2GemfireBeans); -server1.forceDisconnectMember(); +server1.forceDisconnect();
[geode] branch develop updated: GEODE-5453: Make passing build depend on UpgradeTest job.
This is an automated email from the ASF dual-hosted git repository. jbarrett pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/geode.git The following commit(s) were added to refs/heads/develop by this push: new c328417 GEODE-5453: Make passing build depend on UpgradeTest job. c328417 is described below commit c3284178109d3ed3aaa69612b6303186aba65537 Author: Jacob Barrett AuthorDate: Thu Jul 26 07:32:20 2018 -0700 GEODE-5453: Make passing build depend on UpgradeTest job. --- ci/pipelines/geode-build/base.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ci/pipelines/geode-build/base.yml b/ci/pipelines/geode-build/base.yml index 3733b9d..4001a89 100644 --- a/ci/pipelines/geode-build/base.yml +++ b/ci/pipelines/geode-build/base.yml @@ -166,7 +166,7 @@ jobs: public: true plan: - get: geode - passed: [AcceptanceTest, DistributedTest, IntegrationTest] + passed: [AcceptanceTest, DistributedTest, IntegrationTest, UpgradeTest] trigger: true - aggregate: - get: geode-ci @@ -198,7 +198,7 @@ jobs: public: true plan: - get: geode - passed: [AcceptanceTest, DistributedTest, IntegrationTest] + passed: [AcceptanceTest, DistributedTest, IntegrationTest, UpgradeTest] trigger: true - get: geode-ci - get: docker-geode-build-image