You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ud...@apache.org on 2017/08/23 20:55:22 UTC

[18/25] geode git commit: GEODE-3395 Variable-ize product version and name in user guide - Managing

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/network_partitioning/chapter_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/network_partitioning/chapter_overview.html.md.erb b/geode-docs/managing/network_partitioning/chapter_overview.html.md.erb
index 98d3c0b..756fa40 100644
--- a/geode-docs/managing/network_partitioning/chapter_overview.html.md.erb
+++ b/geode-docs/managing/network_partitioning/chapter_overview.html.md.erb
@@ -19,29 +19,29 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-Apache Geode architecture and management features help detect and resolve network partition problems.
+<%=vars.product_name_long%> architecture and management features help detect and resolve network partition problems.
 
--   **[How Network Partitioning Management Works](../../managing/network_partitioning/how_network_partitioning_management_works.html)**
+-   **[How Network Partitioning Management Works](how_network_partitioning_management_works.html)**
 
-    Geode handles network outages by using a weighting system to determine whether the remaining available members have a sufficient quorum to continue as a distributed system.
+    <%=vars.product_name%> handles network outages by using a weighting system to determine whether the remaining available members have a sufficient quorum to continue as a distributed system.
 
--   **[Failure Detection and Membership Views](../../managing/network_partitioning/failure_detection.html)**
+-   **[Failure Detection and Membership Views](failure_detection.html)**
 
-    Geode uses failure detection to remove unresponsive members from membership views.
+    <%=vars.product_name%> uses failure detection to remove unresponsive members from membership views.
 
--   **[Membership Coordinators, Lead Members and Member Weighting](../../managing/network_partitioning/membership_coordinators_lead_members_and_weighting.html)**
+-   **[Membership Coordinators, Lead Members and Member Weighting](membership_coordinators_lead_members_and_weighting.html)**
 
     Network partition detection uses a designated membership coordinator and a weighting system that accounts for a lead member to determine whether a network partition has occurred.
 
--   **[Network Partitioning Scenarios](../../managing/network_partitioning/network_partitioning_scenarios.html)**
+-   **[Network Partitioning Scenarios](network_partitioning_scenarios.html)**
 
     This topic describes network partitioning scenarios and what happens to the partitioned sides of the distributed system.
 
--   **[Configure Apache Geode to Handle Network Partitioning](../../managing/network_partitioning/handling_network_partitioning.html)**
+-   **[Configure <%=vars.product_name_long%> to Handle Network Partitioning](handling_network_partitioning.html)**
 
     This section lists the configuration steps for network partition detection.
 
--   **[Preventing Network Partitions](../../managing/network_partitioning/preventing_network_partitions.html)**
+-   **[Preventing Network Partitions](preventing_network_partitions.html)**
 
     This section provides a short list of things you can do to prevent network partition from occurring.
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/network_partitioning/failure_detection.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/network_partitioning/failure_detection.html.md.erb b/geode-docs/managing/network_partitioning/failure_detection.html.md.erb
index 223b3d9..b79b51d 100644
--- a/geode-docs/managing/network_partitioning/failure_detection.html.md.erb
+++ b/geode-docs/managing/network_partitioning/failure_detection.html.md.erb
@@ -19,7 +19,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-Geode uses failure detection to remove unresponsive members from membership views.
+<%=vars.product_name%> uses failure detection to remove unresponsive members from membership views.
 
 ## <a id="concept_CFD13177F78C456095622151D6EE10EB__section_1AAE6C92FED249EFBA476D8A480B8E51" class="no-quick-link"></a>Failure Detection
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/network_partitioning/handling_network_partitioning.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/network_partitioning/handling_network_partitioning.html.md.erb b/geode-docs/managing/network_partitioning/handling_network_partitioning.html.md.erb
index a227597..20eac01 100644
--- a/geode-docs/managing/network_partitioning/handling_network_partitioning.html.md.erb
+++ b/geode-docs/managing/network_partitioning/handling_network_partitioning.html.md.erb
@@ -1,6 +1,4 @@
----
-title:  Configure Apache Geode to Handle Network Partitioning
----
+<% set_title("Configure", product_name_long, "to Handle Network Partitioning") %>
 
 <!--
 Licensed to the Apache Software Foundation (ASF) under one or more
@@ -60,6 +58,6 @@ The system uses a combination of member coordinators and system members, designa
     -   If the system has clients connecting to it, the clients' `cache.xml` pool `read-timeout` should be set to at least three times the `member-timeout` setting in the server's `gemfire.properties` file. The default pool `read-timeout` setting is 10000 milliseconds.
     -   You can adjust the default weights of members by specifying the system property `gemfire.member-weight` upon startup. For example, if you have some VMs that host a needed service, you could assign them a higher weight upon startup.
 
--   By default, members that are forced out of the distributed system by a network partition event will automatically restart and attempt to reconnect. Data members will attempt to reinitialize the cache. See [Handling Forced Cache Disconnection Using Autoreconnect](../autoreconnect/member-reconnect.html).
+-   By default, members that are forced out of the distributed system by a network partition event will automatically restart and attempt to reconnect. Data members will attempt to reinitialize the cache. See [Handling Forced Cache Disconnection Using Autoreconnect](../member-reconnect.html).
 
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/network_partitioning/how_network_partitioning_management_works.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/network_partitioning/how_network_partitioning_management_works.html.md.erb b/geode-docs/managing/network_partitioning/how_network_partitioning_management_works.html.md.erb
index 93a14ac..75c34b7 100644
--- a/geode-docs/managing/network_partitioning/how_network_partitioning_management_works.html.md.erb
+++ b/geode-docs/managing/network_partitioning/how_network_partitioning_management_works.html.md.erb
@@ -19,14 +19,14 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-Geode handles network outages by using a weighting system to determine whether the remaining available members have a sufficient quorum to continue as a distributed system.
+<%=vars.product_name%> handles network outages by using a weighting system to determine whether the remaining available members have a sufficient quorum to continue as a distributed system.
 
 <a id="how_network_partitioning_management_works__section_548146BB8C24412CB7B43E6640272882"></a>
 Individual members are each assigned a weight, and the quorum is determined by comparing the total weight of currently responsive members to the previous total weight of responsive members.
 
 Your distributed system can split into separate running systems when members lose the ability to see each other. The typical cause of this problem is a failure in the network. When a partitioned system is detected, only one side of the system keeps running and the other side automatically shuts down.
 
-The network partitioning detection feature is enabled by default with a true value for the `enable-network-partition-detection` property. See [Configure Apache Geode to Handle Network Partitioning](handling_network_partitioning.html#handling_network_partitioning) for details. Quorum weight calculations are always performed and logged regardless of this configuration setting.
+The network partitioning detection feature is enabled by default with a true value for the `enable-network-partition-detection` property. See [Configure <%=vars.product_name_long%> to Handle Network Partitioning](handling_network_partitioning.html#handling_network_partitioning) for details. Quorum weight calculations are always performed and logged regardless of this configuration setting.
 
 The overall process for detecting a network partition is as follows:
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/network_partitioning/membership_coordinators_lead_members_and_weighting.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/network_partitioning/membership_coordinators_lead_members_and_weighting.html.md.erb b/geode-docs/managing/network_partitioning/membership_coordinators_lead_members_and_weighting.html.md.erb
index cb21f54..ccb0354 100644
--- a/geode-docs/managing/network_partitioning/membership_coordinators_lead_members_and_weighting.html.md.erb
+++ b/geode-docs/managing/network_partitioning/membership_coordinators_lead_members_and_weighting.html.md.erb
@@ -23,7 +23,7 @@ Network partition detection uses a designated membership coordinator and a weigh
 
 ## <a id="concept_23C2606D59754106AFBFE17515DF4330__section_7C67F1D30C1645CC8489E481873691D9" class="no-quick-link"></a>Membership Coordinators and Lead Members
 
-The membership coordinator is a member that manages entry and exit of other members of the distributed system. With network partition detection enabled, the coordinator can be any Geode member but locators are preferred. In a locator-based system, if all locators are in the reconnecting state, the system continues to function, but new members are not able to join until a locator has successfully reconnected. After a locator has reconnected, the reconnected locator will take over the role of coordinator.
+The membership coordinator is a member that manages entry and exit of other members of the distributed system. With network partition detection enabled, the coordinator can be any <%=vars.product_name%> member but locators are preferred. In a locator-based system, if all locators are in the reconnecting state, the system continues to function, but new members are not able to join until a locator has successfully reconnected. After a locator has reconnected, the reconnected locator will take over the role of coordinator.
 
 When a coordinator is shutting down, it sends out a view that removes itself from the list and the other members must determine who the new coordinator is.
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/network_partitioning/preventing_network_partitions.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/network_partitioning/preventing_network_partitions.html.md.erb b/geode-docs/managing/network_partitioning/preventing_network_partitions.html.md.erb
index 6a983f5..27eeed2 100644
--- a/geode-docs/managing/network_partitioning/preventing_network_partitions.html.md.erb
+++ b/geode-docs/managing/network_partitioning/preventing_network_partitions.html.md.erb
@@ -25,4 +25,4 @@ To avoid a network partition:
 
 -   Use NIC teaming for redundant connectivity. See [http://www.cisco.com/en/US/docs/solutions/Enterprise/Data_Center/vmware/VMware.html#wp696452](http://www.cisco.com/en/US/docs/solutions/Enterprise/Data_Center/vmware/VMware.html#wp696452) for more information.
 -   It is best if all servers share a common network switch. Having multiple network switches increases the possibility of a network partition occurring. If multiple switches must be used, redundant routing paths should be available, if possible. The weight of members sharing a switch in a multi-switch configuration will determine which partition survives if there is an inter-switch failure.
--   In terms of Geode configuration, consider the weighting of members. For example, you could assign important processes a higher weight.
+-   In terms of <%=vars.product_name%> configuration, consider the weighting of members. For example, you could assign important processes a higher weight.

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/region_compression.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/region_compression.html.md.erb b/geode-docs/managing/region_compression.html.md.erb
new file mode 100644
index 0000000..de831c8
--- /dev/null
+++ b/geode-docs/managing/region_compression.html.md.erb
@@ -0,0 +1,226 @@
+---
+title: Region Compression
+---
+
+<!--
+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.
+-->
+<a id="topic_r43_wgc_gl"></a>
+
+
+This section describes region compression, its benefits and usage.
+
+One way to reduce memory consumption by <%=vars.product_name%> is to enable compression in your regions. <%=vars.product_name%> allows you to compress in-memory region values using pluggable compressors (compression codecs). <%=vars.product_name%> includes the [Snappy](http://google.github.io/snappy/) compressor as the built-in compression codec; however, you can implement and specify a different compressor for each compressed region.
+
+## What Gets Compressed
+
+When you enable compression in a region, all values stored in the region are compressed while in memory. Keys and indexes are not compressed. New values are compressed when put into the in-memory cache and all values are decompressed when being read from the cache. Values are not compressed when persisted to disk. Values are decompressed before being sent over the wire to other peer members or clients.
+
+When compression is enabled, each value in the region is compressed, and each region entry is compressed as a single unit. It is not possible to compress individual fields of an entry.
+
+You can have a mix of compressed and non-compressed regions in the same cache.
+
+-   **[Guidelines on Using Compression](#concept_a2c_rhc_gl)**
+
+    This topic describes factors to consider when deciding on whether to use compression.
+
+-   **[How to Enable Compression in a Region](#topic_inm_whc_gl)**
+
+    This topic describes how to enable compression on your region.
+
+-   **[Working with Compressors](#topic_hqf_syj_g4)**
+
+    When using region compression, you can use the default Snappy compressor included with <%=vars.product_name%> or you can specify your own compressor.
+
+-   **[Comparing Performance of Compressed and Non-Compressed Regions](#topic_omw_j3c_gl)**
+
+    The comparative performance of compressed regions versus non-compressed regions can vary depending on how the region is being used and whether the region is hosted in a memory-bound JVM.
+
+## <a id="concept_a2c_rhc_gl" class="no-quick-link"></a>Guidelines on Using Compression
+
+This topic describes factors to consider when deciding on whether to use compression.
+
+Review the following guidelines when deciding on whether or not to enable compression in your region:
+
+-   **Use compression when JVM memory usage is too high.** Compression allows you to store more region data in-memory and to reduce the number of expensive garbage collection cycles that prevent JVMs from running out of memory when memory usage is high.
+
+    To determine if JVM memory usage is high, examine the the following statistics:
+
+    -   vmStats&gt;freeMemory
+    -   vmStats-&gt;maxMemory
+    -   ConcurrentMarkSweep-&gt;collectionTime
+
+    If the amount of free memory regularly drops below 20% - 25% or the duration of the garbage collection cycles is generally on the high side, then the regions hosted on that JVM are good candidates for having compression enabled.
+
+-   **Consider the types and lengths of the fields in the region's entries.** Since compression is performed on each entry separately (and not on the region as a whole), consider the potential for duplicate data across a single entry. Duplicate bytes are compressed more easily. Also, since region entries are first serialized into a byte area before being compressed, how well the data might compress is determined by the number and length of duplicate bytes across the entire entry and not just a single field. Finally, the larger the entry the more likely compression will achieve good results as the potential for duplicate bytes, and a series of duplicate bytes, increases.
+-   **Consider the type of data you wish to compress.** The type of data stored has a significant impact on how well the data may compress. String data will generally compress better than numeric data simply because string bytes are far more likely to repeat; however, that may not always be the case. For example, a region entry that holds a couple of short, unique strings may not provide as much memory savings when compressed as another region entry that holds a large number of integer values. In short, when evaluating the potential gains of compressing a region, consider the likelihood of having duplicate bytes, and more importantly the length of a series of duplicate bytes, for a single, serialized region entry. In addition, data that has already been compressed, such as JPEG format files, can actually cause more memory to be used.
+-   **Compress if you are storing large text values.** Compression is beneficial if you are storing large text values (such as JSON or XML) or blobs in <%=vars.product_name%> that would benefit from compression.
+-   **Consider whether fields being queried against are indexed.** You can query against compressed regions; however, if the fields you are querying against have not been indexed, then the fields must be decompressed before they can be used for comparison. In short, you may incur some query performance costs when querying against non-indexed fields.
+-   **Objects stored in the compression region must be serializable.** Compression only operates on byte arrays, therefore objects being stored in a compressed region must be serializable and deserializable. The objects can either implement the Serializable interface or use one of the other <%=vars.product_name%> serialization mechanisms (such as PdxSerializable). Implementers should always be aware that when compression is enabled the instance of an object put into a region will not be the same instance when taken out. Therefore, transient attributes will lose their value when the containing object is put into and then taken out of a region.
+
+-   **Compressed regions will enable cloning by default.** Setting a compressor and then disabling cloning results in an exception. The options are incompatible because the process of compressing/serializing and then decompressing/deserializing will result in a different instance of the object being created and that may be interpreted as cloning the object.
+
+<a id="topic_inm_whc_gl"></a>
+
+## <a id="topic_inm_whc_gl" class="no-quick-link"></a>How to Enable Compression in a Region
+
+This topic describes how to enable compression on your region.
+
+To enable compression on your region, set the following region attribute in your cache.xml:
+
+``` pre
+<?xml version="1.0" encoding= "UTF-8"?>
+<cache xmlns="http://geode.apache.org/schema/cache"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://geode.apache.org/schema/cache http://geode.apache.org/schema/cache/cache-1.0.xsd"
+    version="1.0” lock-lease="120"  lock-timeout= "60" search-timeout= "300"  is-server= "true"  copy-on-read= "false" > 
+   <region name="compressedRegion" > 
+      <region-attributes data-policy="replicate" ... /> 
+         <compressor>
+             <class-name>org.apache.geode.compression.SnappyCompressor</class-name>
+         </compressor>
+        ...
+      </region-attributes>
+   </region> 
+</cache>
+```
+
+In the Compressor element, specify the class-name for your compressor implementation. This example specifies the Snappy compressor, which is bundled with <%=vars.product_name%> . You can also specify a custom compressor. See [Working with Compressors](#topic_hqf_syj_g4) for an example.
+
+Compression can be enabled during region creation using gfsh or programmatically as well.
+
+Using gfsh:
+
+``` pre
+gfsh>create-region --name=”CompressedRegion” --compressor=”org.apache.geode.compression.SnappyCompressor”;
+```
+
+API:
+
+``` pre
+regionFactory.setCompressor(new SnappyCompressor());
+```
+
+or
+
+``` pre
+regionFactory.setCompressor(SnappyCompressor.getDefaultInstance());
+```
+
+## How to Check Whether Compression is Enabled
+
+You can also check whether a region has compression enabled by querying which codec is being used. A null codec indicates that no compression is enabled for the region.
+
+``` pre
+Region myRegion = cache.getRegion("myRegion");
+Compressor compressor = myRegion.getAttributes().getCompressor();
+```
+
+## <a id="topic_hqf_syj_g4" class="no-quick-link"></a>Working with Compressors
+
+When using region compression, you can use the default Snappy compressor included with <%=vars.product_name%> or you can specify your own compressor.
+
+The compression API consists of a single interface that compression providers must implement. The default compressor (SnappyCompressor) is the single compression implementation that comes bundled with the product. Note that since the Compressor is stateless, there only needs to be a single instance in any JVM; however, multiple instances may be used without issue. The single, default instance of the SnappyCompressor may be retrieved with the `SnappyCompressor.getDefaultInstance()` static method.
+
+**Note:**
+The Snappy codec included with <%=vars.product_name%> cannot be used with Solaris deployments. Snappy is only supported on Linux, Windows, and macOS deployments of <%=vars.product_name%>.
+
+This example provides a custom Compressor implementation:
+
+``` pre
+package com.mybiz.myproduct.compression;
+
+import org.apache.geode.compression.Compressor;
+
+public class LZWCompressor implements Compressor {
+  private final LZWCodec lzwCodec = new LZWCodec(); 
+  
+  @Override
+  public byte[] compress(byte[] input) {
+         return lzwCodec.compress(input);
+  }
+
+  @Override
+  public byte[] decompress(byte[] input) {
+         return lzwCodec.decompress(input);
+  }
+}
+```
+
+To use the new custom compressor on a region:
+
+1.  Make sure that the new compressor package is available in the classpath of all JVMs that will host the region.
+2.  Configure the custom compressor for the region using any of the following mechanisms:
+
+    Using gfsh:
+
+    ``` pre
+    gfsh>create-region --name=”CompressedRegion” \
+    --compressor=”com.mybiz.myproduct.compression.LZWCompressor”
+    ```
+
+    Using API:
+
+    For example:
+
+    ``` pre
+    regionFactory.setCompressor(new LZWCompressor());
+    ```
+
+    cache.xml:
+
+    ``` pre
+    <region-attributes>
+     <Compressor>
+         <class-name>com.mybiz.myproduct.compression.LZWCompressor</class-name>
+      </Compressor>
+    </region-attributes>
+    ```
+
+## Changing the Compressor for an Already Compressed Region
+
+You typically enable compression on a region at the time of region creation. You cannot modify the Compressor or disable compression for the region while the region is online.
+
+However, if you need to change the compressor or disable compression, you can do so by performing the following steps:
+
+1.  Shut down the members hosting the region you wish to modify.
+2.  Modify the cache.xml file for the member either specifying a new compressor or removing the compressor attribute from the region.
+3.  Restart the member.
+
+## <a id="topic_omw_j3c_gl" class="no-quick-link"></a>Comparing Performance of Compressed and Non-Compressed Regions
+
+The comparative performance of compressed regions versus non-compressed regions can vary depending on how the region is being used and whether the region is hosted in a memory-bound JVM.
+
+When considering the cost of enabling compression, you should consider the relative cost of reading and writing compressed data as well as the cost of compression as a percentage of the total time spent managing entries in a region. As a general rule, enabling compression on a region will add 30% - 60% more overhead for region create and update operations than for region get operations. Because of this, enabling compression will create more overhead on regions that are write heavy than on regions that are read heavy.
+
+However, when attempting to evaluate the performance cost of enabling compression you should also consider the cost of compression relative to the overall cost of managing entries in a region. A region may be tuned in such a way that it is highly optimized for read and/or write performance. For example, a replicated region that does not save to disk will have much better read and write performance than a partitioned region that does save to disk. Enabling compression on a region that has been optimized for read and write performance will provide more noticeable results than using compression on regions that have not been optimized this way. More concretely, performance may degrade by several hundred percent on a read/write optimized region whereas it may only degrade by 5 to 10 percent on a non-optimized region.
+
+A final note on performance relates to the cost when enabling compression on regions in a memory bound JVM. Enabling compression generally assumes that the enclosing JVM is memory bound and therefore spends a lot of time for garbage collection. In that case performance may improve by as much as several hundred percent as the JVM will be running far fewer garbage collection cycles and spending less time when running a cycle.
+
+## Monitoring Compression Performance
+
+The following statistics provide monitoring for cache compression:
+
+-   `compressTime`
+-   `decompressTime`
+-   `compressions`
+-   `decompressions`
+-   `preCompressedBytes`
+-   `postCompressedBytes`
+
+See [Cache Performance (CachePerfStats)](../reference/statistics_list.html#section_DEF8D3644D3246AB8F06FE09A37DC5C8) for statistic descriptions.
+
+

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/region_compression/region_compression.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/region_compression/region_compression.html.md.erb b/geode-docs/managing/region_compression/region_compression.html.md.erb
deleted file mode 100644
index ac351dd..0000000
--- a/geode-docs/managing/region_compression/region_compression.html.md.erb
+++ /dev/null
@@ -1,226 +0,0 @@
----
-title: Region Compression
----
-
-<!--
-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.
--->
-<a id="topic_r43_wgc_gl"></a>
-
-
-This section describes region compression, its benefits and usage.
-
-One way to reduce memory consumption by Geode is to enable compression in your regions. Geode allows you to compress in-memory region values using pluggable compressors (compression codecs). Geode includes the [Snappy](http://google.github.io/snappy/) compressor as the built-in compression codec; however, you can implement and specify a different compressor for each compressed region.
-
-## What Gets Compressed
-
-When you enable compression in a region, all values stored in the region are compressed while in memory. Keys and indexes are not compressed. New values are compressed when put into the in-memory cache and all values are decompressed when being read from the cache. Values are not compressed when persisted to disk. Values are decompressed before being sent over the wire to other peer members or clients.
-
-When compression is enabled, each value in the region is compressed, and each region entry is compressed as a single unit. It is not possible to compress individual fields of an entry.
-
-You can have a mix of compressed and non-compressed regions in the same cache.
-
--   **[Guidelines on Using Compression](#concept_a2c_rhc_gl)**
-
-    This topic describes factors to consider when deciding on whether to use compression.
-
--   **[How to Enable Compression in a Region](#topic_inm_whc_gl)**
-
-    This topic describes how to enable compression on your region.
-
--   **[Working with Compressors](#topic_hqf_syj_g4)**
-
-    When using region compression, you can use the default Snappy compressor included with Geode or you can specify your own compressor.
-
--   **[Comparing Performance of Compressed and Non-Compressed Regions](#topic_omw_j3c_gl)**
-
-    The comparative performance of compressed regions versus non-compressed regions can vary depending on how the region is being used and whether the region is hosted in a memory-bound JVM.
-
-## <a id="concept_a2c_rhc_gl" class="no-quick-link"></a>Guidelines on Using Compression
-
-This topic describes factors to consider when deciding on whether to use compression.
-
-Review the following guidelines when deciding on whether or not to enable compression in your region:
-
--   **Use compression when JVM memory usage is too high.** Compression allows you to store more region data in-memory and to reduce the number of expensive garbage collection cycles that prevent JVMs from running out of memory when memory usage is high.
-
-    To determine if JVM memory usage is high, examine the the following statistics:
-
-    -   vmStats&gt;freeMemory
-    -   vmStats-&gt;maxMemory
-    -   ConcurrentMarkSweep-&gt;collectionTime
-
-    If the amount of free memory regularly drops below 20% - 25% or the duration of the garbage collection cycles is generally on the high side, then the regions hosted on that JVM are good candidates for having compression enabled.
-
--   **Consider the types and lengths of the fields in the region's entries.** Since compression is performed on each entry separately (and not on the region as a whole), consider the potential for duplicate data across a single entry. Duplicate bytes are compressed more easily. Also, since region entries are first serialized into a byte area before being compressed, how well the data might compress is determined by the number and length of duplicate bytes across the entire entry and not just a single field. Finally, the larger the entry the more likely compression will achieve good results as the potential for duplicate bytes, and a series of duplicate bytes, increases.
--   **Consider the type of data you wish to compress.** The type of data stored has a significant impact on how well the data may compress. String data will generally compress better than numeric data simply because string bytes are far more likely to repeat; however, that may not always be the case. For example, a region entry that holds a couple of short, unique strings may not provide as much memory savings when compressed as another region entry that holds a large number of integer values. In short, when evaluating the potential gains of compressing a region, consider the likelihood of having duplicate bytes, and more importantly the length of a series of duplicate bytes, for a single, serialized region entry. In addition, data that has already been compressed, such as JPEG format files, can actually cause more memory to be used.
--   **Compress if you are storing large text values.** Compression is beneficial if you are storing large text values (such as JSON or XML) or blobs in Geode that would benefit from compression.
--   **Consider whether fields being queried against are indexed.** You can query against compressed regions; however, if the fields you are querying against have not been indexed, then the fields must be decompressed before they can be used for comparison. In short, you may incur some query performance costs when querying against non-indexed fields.
--   **Objects stored in the compression region must be serializable.** Compression only operates on byte arrays, therefore objects being stored in a compressed region must be serializable and deserializable. The objects can either implement the Serializable interface or use one of the other Geode serialization mechanisms (such as PdxSerializable). Implementers should always be aware that when compression is enabled the instance of an object put into a region will not be the same instance when taken out. Therefore, transient attributes will lose their value when the containing object is put into and then taken out of a region.
-
--   **Compressed regions will enable cloning by default.** Setting a compressor and then disabling cloning results in an exception. The options are incompatible because the process of compressing/serializing and then decompressing/deserializing will result in a different instance of the object being created and that may be interpreted as cloning the object.
-
-<a id="topic_inm_whc_gl"></a>
-
-## <a id="topic_inm_whc_gl" class="no-quick-link"></a>How to Enable Compression in a Region
-
-This topic describes how to enable compression on your region.
-
-To enable compression on your region, set the following region attribute in your cache.xml:
-
-``` pre
-<?xml version="1.0" encoding= "UTF-8"?>
-<cache xmlns="http://geode.apache.org/schema/cache"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://geode.apache.org/schema/cache http://geode.apache.org/schema/cache/cache-1.0.xsd"
-    version="1.0” lock-lease="120"  lock-timeout= "60" search-timeout= "300"  is-server= "true"  copy-on-read= "false" > 
-   <region name="compressedRegion" > 
-      <region-attributes data-policy="replicate" ... /> 
-         <compressor>
-             <class-name>org.apache.geode.compression.SnappyCompressor</class-name>
-         </compressor>
-        ...
-      </region-attributes>
-   </region> 
-</cache>
-```
-
-In the Compressor element, specify the class-name for your compressor implementation. This example specifies the Snappy compressor, which is bundled with Geode . You can also specify a custom compressor. See [Working with Compressors](#topic_hqf_syj_g4) for an example.
-
-Compression can be enabled during region creation using gfsh or programmatically as well.
-
-Using gfsh:
-
-``` pre
-gfsh>create-region --name=”CompressedRegion” --compressor=”org.apache.geode.compression.SnappyCompressor”;
-```
-
-API:
-
-``` pre
-regionFactory.setCompressor(new SnappyCompressor());
-```
-
-or
-
-``` pre
-regionFactory.setCompressor(SnappyCompressor.getDefaultInstance());
-```
-
-## How to Check Whether Compression is Enabled
-
-You can also check whether a region has compression enabled by querying which codec is being used. A null codec indicates that no compression is enabled for the region.
-
-``` pre
-Region myRegion = cache.getRegion("myRegion");
-Compressor compressor = myRegion.getAttributes().getCompressor();
-```
-
-## <a id="topic_hqf_syj_g4" class="no-quick-link"></a>Working with Compressors
-
-When using region compression, you can use the default Snappy compressor included with Geode or you can specify your own compressor.
-
-The compression API consists of a single interface that compression providers must implement. The default compressor (SnappyCompressor) is the single compression implementation that comes bundled with the product. Note that since the Compressor is stateless, there only needs to be a single instance in any JVM; however, multiple instances may be used without issue. The single, default instance of the SnappyCompressor may be retrieved with the `SnappyCompressor.getDefaultInstance()` static method.
-
-**Note:**
-The Snappy codec included with Geode cannot be used with Solaris deployments. Snappy is only supported on Linux, Windows, and macOS deployments of Geode.
-
-This example provides a custom Compressor implementation:
-
-``` pre
-package com.mybiz.myproduct.compression;
-
-import org.apache.geode.compression.Compressor;
-
-public class LZWCompressor implements Compressor {
-  private final LZWCodec lzwCodec = new LZWCodec(); 
-  
-  @Override
-  public byte[] compress(byte[] input) {
-         return lzwCodec.compress(input);
-  }
-
-  @Override
-  public byte[] decompress(byte[] input) {
-         return lzwCodec.decompress(input);
-  }
-}
-```
-
-To use the new custom compressor on a region:
-
-1.  Make sure that the new compressor package is available in the classpath of all JVMs that will host the region.
-2.  Configure the custom compressor for the region using any of the following mechanisms:
-
-    Using gfsh:
-
-    ``` pre
-    gfsh>create-region --name=”CompressedRegion” \
-    --compressor=”com.mybiz.myproduct.compression.LZWCompressor”
-    ```
-
-    Using API:
-
-    For example:
-
-    ``` pre
-    regionFactory.setCompressor(new LZWCompressor());
-    ```
-
-    cache.xml:
-
-    ``` pre
-    <region-attributes>
-     <Compressor>
-         <class-name>com.mybiz.myproduct.compression.LZWCompressor</class-name>
-      </Compressor>
-    </region-attributes>
-    ```
-
-## Changing the Compressor for an Already Compressed Region
-
-You typically enable compression on a region at the time of region creation. You cannot modify the Compressor or disable compression for the region while the region is online.
-
-However, if you need to change the compressor or disable compression, you can do so by performing the following steps:
-
-1.  Shut down the members hosting the region you wish to modify.
-2.  Modify the cache.xml file for the member either specifying a new compressor or removing the compressor attribute from the region.
-3.  Restart the member.
-
-## <a id="topic_omw_j3c_gl" class="no-quick-link"></a>Comparing Performance of Compressed and Non-Compressed Regions
-
-The comparative performance of compressed regions versus non-compressed regions can vary depending on how the region is being used and whether the region is hosted in a memory-bound JVM.
-
-When considering the cost of enabling compression, you should consider the relative cost of reading and writing compressed data as well as the cost of compression as a percentage of the total time spent managing entries in a region. As a general rule, enabling compression on a region will add 30% - 60% more overhead for region create and update operations than for region get operations. Because of this, enabling compression will create more overhead on regions that are write heavy than on regions that are read heavy.
-
-However, when attempting to evaluate the performance cost of enabling compression you should also consider the cost of compression relative to the overall cost of managing entries in a region. A region may be tuned in such a way that it is highly optimized for read and/or write performance. For example, a replicated region that does not save to disk will have much better read and write performance than a partitioned region that does save to disk. Enabling compression on a region that has been optimized for read and write performance will provide more noticeable results than using compression on regions that have not been optimized this way. More concretely, performance may degrade by several hundred percent on a read/write optimized region whereas it may only degrade by 5 to 10 percent on a non-optimized region.
-
-A final note on performance relates to the cost when enabling compression on regions in a memory bound JVM. Enabling compression generally assumes that the enclosing JVM is memory bound and therefore spends a lot of time for garbage collection. In that case performance may improve by as much as several hundred percent as the JVM will be running far fewer garbage collection cycles and spending less time when running a cycle.
-
-## Monitoring Compression Performance
-
-The following statistics provide monitoring for cache compression:
-
--   `compressTime`
--   `decompressTime`
--   `compressions`
--   `decompressions`
--   `preCompressedBytes`
--   `postCompressedBytes`
-
-See [Cache Performance (CachePerfStats)](../../reference/statistics_list.html#section_DEF8D3644D3246AB8F06FE09A37DC5C8) for statistic descriptions.
-
-

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/authentication_examples.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/authentication_examples.html.md.erb b/geode-docs/managing/security/authentication_examples.html.md.erb
index ce21bac..ce73399 100644
--- a/geode-docs/managing/security/authentication_examples.html.md.erb
+++ b/geode-docs/managing/security/authentication_examples.html.md.erb
@@ -21,8 +21,8 @@ limitations under the License.
 
 This example demonstrates the basics of an implementation of the
 `SecurityManager.authenticate` method.
-The remainder of the example may be found within the Apache Geode
-source code within the
+The remainder of the example may be found in the <%=vars.product_name_long%>
+source code in the
 `geode-core/src/main/java/org/apache/geode/examples/security` directory.
 
 Of course, the security implementation of every installation is unique,

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/authentication_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/authentication_overview.html.md.erb b/geode-docs/managing/security/authentication_overview.html.md.erb
index de8088e..0a6e0c5 100644
--- a/geode-docs/managing/security/authentication_overview.html.md.erb
+++ b/geode-docs/managing/security/authentication_overview.html.md.erb
@@ -22,20 +22,20 @@ limitations under the License.
 Authentication verifies the identities of components within the distributed
 system such as peers, clients, and those connecting to a JMX manager.
 
--   **[Implementing Authentication](../../managing/security/implementing_authentication.html)**
+-   **[Implementing Authentication](implementing_authentication.html)**
 
     All components of the distributed system authenticate the same way,
     through a custom-written method.
 
--   **[Encrypting Passwords for Use in cache.xml](../../managing/security/encrypting_passwords.html)**
+-   **[Encrypting Passwords for Use in cache.xml](encrypting_passwords.html)**
 
-    Apache Geode provides a gfsh utility to generate encrypted passwords.
+    <%=vars.product_name_long%> provides a gfsh utility to generate encrypted passwords.
 
--   **[Encrypt Credentials with Diffie-Hellman](../../managing/security/encrypting_with_diffie_helman.html)**
+-   **[Encrypt Credentials with Diffie-Hellman](encrypting_with_diffie_hellman.html)**
 
     For secure transmission of sensitive information, like passwords, you can encrypt credentials using the Diffie-Hellman key exchange algorithm.
 
--   **[Authentication Example](../../managing/security/authentication_examples.html)**
+-   **[Authentication Example](authentication_examples.html)**
 
     The example demonstrates the basics of an implementation of the
 `SecurityManager.authenticate` method.

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/authorization_example.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/authorization_example.html.md.erb b/geode-docs/managing/security/authorization_example.html.md.erb
index 36182c7..8089220 100644
--- a/geode-docs/managing/security/authorization_example.html.md.erb
+++ b/geode-docs/managing/security/authorization_example.html.md.erb
@@ -21,7 +21,7 @@ limitations under the License.
 
 This example demonstrates the basics of an implementation of the
 `SecurityManager.authorize` method.
-The remainder of the example may be found within the Apache Geode
+The remainder of the example may be found within the <%=vars.product_name_long%>
 source code within the
 `geode-core/src/main/java/org/apache/geode/examples/security` directory.
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/authorization_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/authorization_overview.html.md.erb b/geode-docs/managing/security/authorization_overview.html.md.erb
index beca4f2..3745ef8 100644
--- a/geode-docs/managing/security/authorization_overview.html.md.erb
+++ b/geode-docs/managing/security/authorization_overview.html.md.erb
@@ -23,11 +23,11 @@ Distributed system and cache operations can be restricted, intercepted and
 modifed, or completely blocked based on configured access rights set for
 the various distributed system entities. 
 
--   **[Implementing Authorization](../../managing/security/implementing_authorization.html)**
+-   **[Implementing Authorization](implementing_authorization.html)**
 
     To use authorization for client/server systems, your client connections must be authenticated by their servers.
 
--   **[Authorization Example](../../managing/security/authorization_example.html)**
+-   **[Authorization Example](authorization_example.html)**
 
     This topic discusses the authorization example provided in the product under `templates/security` using `XmlAuthorization.java`, `XmlErrorHandler.java`, and `authz6_0.dtd`.
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/chapter_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/chapter_overview.html.md.erb b/geode-docs/managing/security/chapter_overview.html.md.erb
index 98990f6..58f6fe3 100644
--- a/geode-docs/managing/security/chapter_overview.html.md.erb
+++ b/geode-docs/managing/security/chapter_overview.html.md.erb
@@ -21,27 +21,27 @@ limitations under the License.
 
 The security framework permits authentication of connecting components and authorization of operations for all communicating components of the distributed system.
 
--   **[Security Implementation Introduction and Overview](../../managing/security/implementing_security.html)**
+-   **[Security Implementation Introduction and Overview](implementing_security.html)**
 
     Encryption, SSL secure communication, authentication, and authorization help to secure the distributed system.
 
--   **[Security Detail Considerations](../../managing/security/security_audit_overview.html)**
+-   **[Security Detail Considerations](security_audit_overview.html)**
 
     This section gathers discrete details in one convenient location to better help you assess and configure the security of your environment.
 
--   **[Enable Security with Property Definitions](../../managing/security/enable_security.html)**
+-   **[Enable Security with Property Definitions](enable_security.html)**
 
--   **[Authentication](../../managing/security/authentication_overview.html)**
+-   **[Authentication](authentication_overview.html)**
 
     A distributed system using authentication bars malicious peers or clients, and deters inadvertent access to its cache.
 
--   **[Authorization](../../managing/security/authorization_overview.html)**
+-   **[Authorization](authorization_overview.html)**
 
     Client operations on a cache server can be restricted or completely blocked based on the roles and permissions assigned to the credentials submitted by the client.
 
--   **[Post Processing of Region Data](../../managing/security/post_processing.html)**
+-   **[Post Processing of Region Data](post_processing.html)**
 
--   **[SSL](../../managing/security/ssl_overview.html)**
+-   **[SSL](ssl_overview.html)**
 
     SSL protects your data in transit between applications.
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/encrypting_passwords.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/encrypting_passwords.html.md.erb b/geode-docs/managing/security/encrypting_passwords.html.md.erb
index 975727e..c0e36ad 100644
--- a/geode-docs/managing/security/encrypting_passwords.html.md.erb
+++ b/geode-docs/managing/security/encrypting_passwords.html.md.erb
@@ -21,7 +21,7 @@ limitations under the License.
 <a id="topic_730CC61BA84F421494956E2B98BDE2A1"></a>
 
 
-Apache Geode provides a gfsh utility to generate encrypted passwords.
+<%=vars.product_name_long%> provides a gfsh utility to generate encrypted passwords.
 
 You may need to specify an encrypted password in `cache.xml` when configuring JNDI connections to external JDBC data sources. See [Configuring Database Connections Using JNDI](../../developing/transactions/configuring_db_connections_using_JNDI.html#topic_A5E3A67C808D48C08E1F0DC167C5C494) for configuration examples.
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/encrypting_with_diffie_hellman.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/encrypting_with_diffie_hellman.html.md.erb b/geode-docs/managing/security/encrypting_with_diffie_hellman.html.md.erb
new file mode 100644
index 0000000..2dd91cb
--- /dev/null
+++ b/geode-docs/managing/security/encrypting_with_diffie_hellman.html.md.erb
@@ -0,0 +1,66 @@
+---
+title:  Encrypt Credentials with Diffie-Hellman
+---
+
+<!--
+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.
+-->
+
+For secure transmission of sensitive information, like passwords, you can encrypt credentials using the Diffie-Hellman key exchange algorithm.
+
+This encryption applies only to client/server authentication - not peer-to-peer authentication.
+
+You need to specify the name of a valid symmetric key cipher supported by the JDK. Valid key names, like DES, DESede, AES, and Blowfish, enable the Diffie-Hellman algorithm with the specified cipher to encrypt the credentials. For valid JDK names, see [http://download.oracle.com/javase/1.5.0/docs/guide/security/CryptoSpec.html#AppA](http://download.oracle.com/javase/1.5.0/docs/guide/security/CryptoSpec.html#AppA).
+
+Before you begin, you need to understand how to use your security algorithm.
+
+## <a id="using_diffie_helman__section_45A9502BDF8E42E1970CEFB132F7424D" class="no-quick-link"></a>Enable Server Authentication of Client with Diffie-Hellman
+
+Set this in property in the client’s `gemfire.properties` (or `gfsecurity.properties` file if you are creating a special restricted access file for security configuration):
+
+-   `security-client-dhalgo`. Name of a valid symmetric key cipher supported by the JDK, possibly followed by a key size specification.
+
+This causes the server to authenticate the client using the Diffie-Hellman algorithm.
+
+## <a id="using_diffie_helman__section_D07F68BE8D3140E99244895F4AF2CC80" class="no-quick-link"></a>Enable Client Authentication of Server
+
+This requires server authentication of client with Diffie-Hellman to be enabled. To have your client authenticate its servers, in addition to being authenticated:
+
+1.  In server `gemfire.properties` (or `gfsecurity.properties` file if you are creating a special restricted access file for security configuration), set:
+    1.  `security-server-kspath`. Path of the PKCS\#12 keystore containing the private key for the server
+    2.  `security-server-ksalias`. Alias name for the private key in the keystore.
+    3.  `security-server-kspasswd`. Keystore and private key password, which should match.
+
+2.  In client `gemfire.properties` (or `gfsecurity.properties` file if you are creating a special restricted access file for security configuration), set:
+    1.  `security-client-kspasswd`. Password for the public key file store on the client
+    2.  `security-client-kspath`. Path to the client public key truststore, the JKS keystore of public keys for all servers the client can use. This keystore should not be password-protected
+
+## <a id="using_diffie_helman__section_5FB4437072AC4B4E93210BEA60B67A27" class="no-quick-link"></a>Set the Key Size for AES and Blowfish Encryption Keys
+
+For algorithms like AES, especially if large key sizes are used, you may need Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files from Sun or equivalent for your JDK. This enables encryption of client credentials in combination with challenge-response from server to client to prevent replay and other types of attacks. It also enables challenge-response from client to server to avoid server-side replay attacks.
+
+For the AES and Blowfish algorithms, you can specify the key size for the `security-client-dhalgo` property by adding a colon and the size after the algorithm specification, like this:
+
+``` pre
+security-client-dhalgo=AES:192
+```
+
+-   For AES, valid key size settings are:
+    -   AES:128
+    -   AES:192
+    -   AES:256
+-   For Blowfish, set the key size between 128 and 448 bits, inclusive.
+

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/encrypting_with_diffie_helman.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/encrypting_with_diffie_helman.html.md.erb b/geode-docs/managing/security/encrypting_with_diffie_helman.html.md.erb
deleted file mode 100644
index 2dd91cb..0000000
--- a/geode-docs/managing/security/encrypting_with_diffie_helman.html.md.erb
+++ /dev/null
@@ -1,66 +0,0 @@
----
-title:  Encrypt Credentials with Diffie-Hellman
----
-
-<!--
-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.
--->
-
-For secure transmission of sensitive information, like passwords, you can encrypt credentials using the Diffie-Hellman key exchange algorithm.
-
-This encryption applies only to client/server authentication - not peer-to-peer authentication.
-
-You need to specify the name of a valid symmetric key cipher supported by the JDK. Valid key names, like DES, DESede, AES, and Blowfish, enable the Diffie-Hellman algorithm with the specified cipher to encrypt the credentials. For valid JDK names, see [http://download.oracle.com/javase/1.5.0/docs/guide/security/CryptoSpec.html#AppA](http://download.oracle.com/javase/1.5.0/docs/guide/security/CryptoSpec.html#AppA).
-
-Before you begin, you need to understand how to use your security algorithm.
-
-## <a id="using_diffie_helman__section_45A9502BDF8E42E1970CEFB132F7424D" class="no-quick-link"></a>Enable Server Authentication of Client with Diffie-Hellman
-
-Set this in property in the client’s `gemfire.properties` (or `gfsecurity.properties` file if you are creating a special restricted access file for security configuration):
-
--   `security-client-dhalgo`. Name of a valid symmetric key cipher supported by the JDK, possibly followed by a key size specification.
-
-This causes the server to authenticate the client using the Diffie-Hellman algorithm.
-
-## <a id="using_diffie_helman__section_D07F68BE8D3140E99244895F4AF2CC80" class="no-quick-link"></a>Enable Client Authentication of Server
-
-This requires server authentication of client with Diffie-Hellman to be enabled. To have your client authenticate its servers, in addition to being authenticated:
-
-1.  In server `gemfire.properties` (or `gfsecurity.properties` file if you are creating a special restricted access file for security configuration), set:
-    1.  `security-server-kspath`. Path of the PKCS\#12 keystore containing the private key for the server
-    2.  `security-server-ksalias`. Alias name for the private key in the keystore.
-    3.  `security-server-kspasswd`. Keystore and private key password, which should match.
-
-2.  In client `gemfire.properties` (or `gfsecurity.properties` file if you are creating a special restricted access file for security configuration), set:
-    1.  `security-client-kspasswd`. Password for the public key file store on the client
-    2.  `security-client-kspath`. Path to the client public key truststore, the JKS keystore of public keys for all servers the client can use. This keystore should not be password-protected
-
-## <a id="using_diffie_helman__section_5FB4437072AC4B4E93210BEA60B67A27" class="no-quick-link"></a>Set the Key Size for AES and Blowfish Encryption Keys
-
-For algorithms like AES, especially if large key sizes are used, you may need Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files from Sun or equivalent for your JDK. This enables encryption of client credentials in combination with challenge-response from server to client to prevent replay and other types of attacks. It also enables challenge-response from client to server to avoid server-side replay attacks.
-
-For the AES and Blowfish algorithms, you can specify the key size for the `security-client-dhalgo` property by adding a colon and the size after the algorithm specification, like this:
-
-``` pre
-security-client-dhalgo=AES:192
-```
-
--   For AES, valid key size settings are:
-    -   AES:128
-    -   AES:192
-    -   AES:256
--   For Blowfish, set the key size between 128 and 448 bits, inclusive.
-

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/implementing_ssl.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/implementing_ssl.html.md.erb b/geode-docs/managing/security/implementing_ssl.html.md.erb
index 5cf2517..978d517 100644
--- a/geode-docs/managing/security/implementing_ssl.html.md.erb
+++ b/geode-docs/managing/security/implementing_ssl.html.md.erb
@@ -20,8 +20,8 @@ limitations under the License.
 -->
 
 You can configure SSL for authentication between members and to protect your data during
-distribution. You can use SSL alone or in conjunction with the other Geode security options.
-Geode SSL connections use the Java Secure Sockets Extension (JSSE) package.
+distribution. You can use SSL alone or in conjunction with the other <%=vars.product_name%> security options.
+<%=vars.product_name%> SSL connections use the Java Secure Sockets Extension (JSSE) package.
 
 ## <a id="ssl_configurable_components" class="no-quick-link"></a>SSL-Configurable Components
 
@@ -62,7 +62,7 @@ with a locator must also have SSL enabled.
 
 ## <a id="ssl_configuration_properties" class="no-quick-link"></a>SSL Configuration Properties
 
-You can use Geode configuration properties to enable or disable SSL, to identify SSL ciphers and
+You can use <%=vars.product_name%> configuration properties to enable or disable SSL, to identify SSL ciphers and
 protocols, and to provide the location and credentials for key and trust stores.
 
 <dt>**ssl-enabled-components**</dt>
@@ -186,7 +186,7 @@ The following table lists the components you can configure to use SSL.
 | server    | Communication between clients and servers                             |
 | all       | All of the above                                                      |
 
-The following table lists the properties you can use to configure SSL on your Geode system.
+The following table lists the properties you can use to configure SSL on your <%=vars.product_name%> system.
 
 <span class="tablecap">Table 2. SSL Configuration Properties</span>
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/properties_file.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/properties_file.html.md.erb b/geode-docs/managing/security/properties_file.html.md.erb
index e9ba1d6..2888564 100644
--- a/geode-docs/managing/security/properties_file.html.md.erb
+++ b/geode-docs/managing/security/properties_file.html.md.erb
@@ -22,7 +22,7 @@ limitations under the License.
 
 Any security-related (properties that begin with `security-*`) configuration properties that are normally configured in `gemfire.properties` can be moved to a separate `gfsecurity.properties` file. Placing these configuration settings in a separate file allows you to restrict access to security configuration data. This way, you can still allow read or write access for your `gemfire.properties` file.
 
-Upon startup, Geode processes will look for the `gfsecurity.properties` file in the following locations in order:
+Upon startup, <%=vars.product_name%> processes will look for the `gfsecurity.properties` file in the following locations in order:
 
 -   current working directory
 -   user's home directory

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/security-audit.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/security-audit.html.md.erb b/geode-docs/managing/security/security-audit.html.md.erb
index 0a6c410..c5589da 100644
--- a/geode-docs/managing/security/security-audit.html.md.erb
+++ b/geode-docs/managing/security/security-audit.html.md.erb
@@ -21,7 +21,7 @@ limitations under the License.
 <a id="topic_686158E9AFBD47518BE1B4BEB232C190"></a>
 
 
-Geode processes use either UDP or TCP/IP ports to communicate with other processes or clients.
+<%=vars.product_name%> processes use either UDP or TCP/IP ports to communicate with other processes or clients.
 
 For example:
 
@@ -30,9 +30,9 @@ For example:
 -   JMX clients (such as `gfsh` and JConsole) can connect to JMX Managers and other manageable members on the pre-defined RMI port 1099. You can configure a different port if necessary.
 -   Each gateway receiver usually has a port range where it listens for incoming communication.
 
-See [Firewalls and Ports](../../configuring/running/firewalls_ports.html#concept_5ED182BDBFFA4FAB89E3B81366EBC58E) for the complete list of ports used by Geode, their default values, and how to configure them if you do not want to use the default value.
+See [Firewalls and Ports](../../configuring/running/firewalls_ports.html#concept_5ED182BDBFFA4FAB89E3B81366EBC58E) for the complete list of ports used by <%=vars.product_name%>, their default values, and how to configure them if you do not want to use the default value.
 
-Geode does not have any external interfaces or services that need to be enabled or opened.
+<%=vars.product_name%> does not have any external interfaces or services that need to be enabled or opened.
 
 ## <a id="topic_263072624B8D4CDBAD18B82E07AA44B6" class="no-quick-link"></a>Resources That Must Be Protected
 
@@ -49,7 +49,7 @@ The default location of the `gemfire.properties` and `cache.xml` configuration f
 
 By default, the log files are located in the working directory used when you started the corresponding processes.
 
-For Geode members (locators and cache servers), you can also specify a custom working directory location when you start each process. See [Logging](../logging/logging.html#concept_30DB86B12B454E168B80BB5A71268865) for more details.
+For <%=vars.product_name%> members (locators and cache servers), you can also specify a custom working directory location when you start each process. See [Logging](../logging/logging.html#concept_30DB86B12B454E168B80BB5A71268865) for more details.
 
 The log files are as follows:
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/security_audit_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/security_audit_overview.html.md.erb b/geode-docs/managing/security/security_audit_overview.html.md.erb
index 7f1c374..faa20d7 100644
--- a/geode-docs/managing/security/security_audit_overview.html.md.erb
+++ b/geode-docs/managing/security/security_audit_overview.html.md.erb
@@ -25,11 +25,11 @@ This section gathers discrete details in one convenient location to better help
 
 -   **[External Interfaces, Ports, and Services](security-audit.html)**
 
-    Geode processes use either UDP or TCP/IP ports to communicate with other processes or clients.
+    <%=vars.product_name%> processes use either UDP or TCP/IP ports to communicate with other processes or clients.
 
 -   **[Resources That Must Be Protected](security-audit.html#topic_263072624B8D4CDBAD18B82E07AA44B6)**
 
-    Certain Geode configuration files should be readable and writeable *only* by the dedicated user who runs servers.
+    Certain <%=vars.product_name%> configuration files should be readable and writeable *only* by the dedicated user who runs servers.
 
 -   **[Log File Locations](security-audit.html#topic_5B6DF783A14241399DC25C6EE8D0048A)**
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/ssl_example.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/ssl_example.html.md.erb b/geode-docs/managing/security/ssl_example.html.md.erb
index ef213dc..f4b3dd6 100644
--- a/geode-docs/managing/security/ssl_example.html.md.erb
+++ b/geode-docs/managing/security/ssl_example.html.md.erb
@@ -19,7 +19,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-A simple example demonstrates the configuration and startup of Geode system components with SSL.
+A simple example demonstrates the configuration and startup of <%=vars.product_name%> system components with SSL.
 
 ## <a id="ssl_example__section_A8817FA8EF654CFB862F2375C0DD6770" class="no-quick-link"></a>Provider-Specific Configuration File
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/security/ssl_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/security/ssl_overview.html.md.erb b/geode-docs/managing/security/ssl_overview.html.md.erb
index b038a28..d52d8be 100644
--- a/geode-docs/managing/security/ssl_overview.html.md.erb
+++ b/geode-docs/managing/security/ssl_overview.html.md.erb
@@ -22,24 +22,24 @@ limitations under the License.
 SSL protects your data in transit between applications by ensuring
 that only the applications identified by you can share distributed system data.
 
-To be secure, the data that is cached in a Geode system must be protected during storage, distribution, and processing. At any time, data in a distributed system may be in one or more of these locations:
+To be secure, the data that is cached in a <%=vars.product_name%> system must be protected during storage, distribution, and processing. At any time, data in a distributed system may be in one or more of these locations:
 
 -   In memory
 -   On disk
 -   In transit between processes (for example, in an internet or intranet)
 
-For the protection of data in memory or on disk, Geode relies on your standard system security features such as firewalls, operating system settings, and JDK security settings.
+For the protection of data in memory or on disk, <%=vars.product_name%> relies on your standard system security features such as firewalls, operating system settings, and JDK security settings.
 
-The SSL implementation ensures that only the applications identified by you can share distributed system data in transit. In this figure, the data in the visible portion of the distributed system is secured by the firewall and by security settings in the operating system and in the JDK. The data in the disk files, for example, is protected by the firewall and by file permissions. Using SSL for data distribution provides secure communication between Geode system members inside and outside the firewalls.
+The SSL implementation ensures that only the applications identified by you can share distributed system data in transit. In this figure, the data in the visible portion of the distributed system is secured by the firewall and by security settings in the operating system and in the JDK. The data in the disk files, for example, is protected by the firewall and by file permissions. Using SSL for data distribution provides secure communication between <%=vars.product_name%> system members inside and outside the firewalls.
 
 <img src="../../images/security-5.gif" id="how_ssl_works__image_0437E0FC3EE74FB297BE4EBCC0FD4321" class="image" />
 
 
 -   **[Configuring SSL](implementing_ssl.html)**
 
-    You configure SSL for mutual authentication between members and to protect your data during distribution. You can use SSL alone or in conjunction with the other Geode security options.
+    You configure SSL for mutual authentication between members and to protect your data during distribution. You can use SSL alone or in conjunction with the other <%=vars.product_name%> security options.
 
 -   **[SSL Sample Implementation](ssl_example.html)**
 
-    A simple example demonstrates the configuration and startup of Geode system components with SSL.
+    A simple example demonstrates the configuration and startup of <%=vars.product_name%> system components with SSL.
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/statistics/application_defined_statistics.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/statistics/application_defined_statistics.html.md.erb b/geode-docs/managing/statistics/application_defined_statistics.html.md.erb
index 72e0876..fccc761 100644
--- a/geode-docs/managing/statistics/application_defined_statistics.html.md.erb
+++ b/geode-docs/managing/statistics/application_defined_statistics.html.md.erb
@@ -19,10 +19,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-Geode includes interfaces for defining and maintaining your own statistics.
+<%=vars.product_name%> includes interfaces for defining and maintaining your own statistics.
 
 <a id="application_defined_statistics__section_88C31FA62A194947BF71AD54B5F9BAB3"></a>
-The Geode package, `org.apache.geode`, includes the following interfaces for defining and maintaining your own statistics:
+The <%=vars.product_name%> package, `org.apache.geode`, includes the following interfaces for defining and maintaining your own statistics:
 
 -   **StatisticDescriptor**. Describes an individual statistic. Each statistic has a name and information on the statistic it holds, such as its class type (long, int, etc.) and whether it is a counter that always increments, or a gauge that can vary in any manner.
 -   **StatisticsType**. Logical type that holds a list of `StatisticDescriptors` and provides access methods to them. The `StatisticDescriptors` contained by a `StatisticsType` are each assigned a unique ID within the list. `StatisticsType` is used to create a `Statistics` instance.

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/statistics/chapter_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/statistics/chapter_overview.html.md.erb b/geode-docs/managing/statistics/chapter_overview.html.md.erb
index 87cf5f4..650b852 100644
--- a/geode-docs/managing/statistics/chapter_overview.html.md.erb
+++ b/geode-docs/managing/statistics/chapter_overview.html.md.erb
@@ -19,24 +19,24 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-Every application and server in a distributed system can access statistical data about Apache Geode operations. You can configure the gathering of statistics by using the `alter runtime` command of `gfsh` or in the `gemfire.properties` file to facilitate system analysis and troubleshooting.
+Every application and server in a distributed system can access statistical data about <%=vars.product_name_long%> operations. You can configure the gathering of statistics by using the `alter runtime` command of `gfsh` or in the `gemfire.properties` file to facilitate system analysis and troubleshooting.
 
--   **[How Statistics Work](../../managing/statistics/how_statistics_work.html)**
+-   **[How Statistics Work](how_statistics_work.html)**
 
     Each application or cache server that joins the distributed system can collect and archive statistical data for analyzing system performance.
 
--   **[Transient Region and Entry Statistics](../../managing/statistics/transient_region_and_entry_statistics.html)**
+-   **[Transient Region and Entry Statistics](transient_region_and_entry_statistics.html)**
 
-    For replicated, distributed, and local regions, Geode provides a standard set of statistics for the region and its entries.
+    For replicated, distributed, and local regions, <%=vars.product_name%> provides a standard set of statistics for the region and its entries.
 
--   **[Application-Defined and Custom Statistics](../../managing/statistics/application_defined_statistics.html)**
+-   **[Application-Defined and Custom Statistics](application_defined_statistics.html)**
 
-    Geode includes interfaces for defining and maintaining your own statistics.
+    <%=vars.product_name%> includes interfaces for defining and maintaining your own statistics.
 
--   **[Configuring and Using Statistics](../../managing/statistics/setting_up_statistics.html)**
+-   **[Configuring and Using Statistics](setting_up_statistics.html)**
 
     You configure statistics and statistics archiving in gemfire.properties
 
--   **[Viewing Archived Statistics](../../managing/statistics/viewing_statistics.html)**
+-   **[Viewing Archived Statistics](viewing_statistics.html)**
 
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/statistics/how_statistics_work.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/statistics/how_statistics_work.html.md.erb b/geode-docs/managing/statistics/how_statistics_work.html.md.erb
index 461c3e8..44618e7 100644
--- a/geode-docs/managing/statistics/how_statistics_work.html.md.erb
+++ b/geode-docs/managing/statistics/how_statistics_work.html.md.erb
@@ -27,7 +27,7 @@ Set the configuration attributes that control statistics collection in `gfsh` or
 When Java applications and servers join a distributed system, they can be configured via the cluster configuration service to enable statistics sampling and whether to archive the statistics that are gathered.
 
 **Note:**
-Geode statistics use the Java `System.nanoTimer` for nanosecond timing. This method provides nanosecond precision, but not necessarily nanosecond accuracy. For more information, see the online Java documentation for `System.nanoTimer` for the JRE you are using with Geode.
+<%=vars.product_name%> statistics use the Java `System.nanoTimer` for nanosecond timing. This method provides nanosecond precision, but not necessarily nanosecond accuracy. For more information, see the online Java documentation for `System.nanoTimer` for the JRE you are using with <%=vars.product_name%>.
 
 Statistics sampling provides valuable information for ongoing system tuning and troubleshooting. Sampling statistics (not including time-based statistics) at the default sample rate does not impact overall distributed system performance. We recommend enabling statistics sampling in production environments. We do not recommend enabling time-based statistics (configured with the enable-time-statistics property) in production environments.
 

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/statistics/setting_up_statistics.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/statistics/setting_up_statistics.html.md.erb b/geode-docs/managing/statistics/setting_up_statistics.html.md.erb
index 2ec1f23..8467eed 100644
--- a/geode-docs/managing/statistics/setting_up_statistics.html.md.erb
+++ b/geode-docs/managing/statistics/setting_up_statistics.html.md.erb
@@ -137,7 +137,7 @@ In this procedure it is assumed that you understand [Basic Configuration and Pro
 
 ## <a id="setting_up_statistics__section_D511BB61B27A44749E2012B066A5C906" class="no-quick-link"></a>Controlling the Size of Archive Files
 
-You can specify limits on the archive files for statistics using `alter                 runtime` command. These are the areas of control:
+You can specify limits on the archive files for statistics using `alter runtime` command. These are the areas of control:
 
 -   **Archive File Growth Rate**.
     -   The `--statistic-sample-rate` parameter controls how often samples are taken, which affects the speed at which the archive file grows.

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/statistics/transient_region_and_entry_statistics.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/statistics/transient_region_and_entry_statistics.html.md.erb b/geode-docs/managing/statistics/transient_region_and_entry_statistics.html.md.erb
index a10cfd5..3d71b6a 100644
--- a/geode-docs/managing/statistics/transient_region_and_entry_statistics.html.md.erb
+++ b/geode-docs/managing/statistics/transient_region_and_entry_statistics.html.md.erb
@@ -19,12 +19,12 @@ See the License for the specific language governing permissions and
 limitations under the License.
 -->
 
-For replicated, distributed, and local regions, Geode provides a standard set of statistics for the region and its entries.
+For replicated, distributed, and local regions, <%=vars.product_name%> provides a standard set of statistics for the region and its entries.
 
-Geode gathers these statistics when the `--enable-statistics` parameter of the `create region` command of `gfsh` is set to true or in cache.xml the region attribute `statistics-enabled` is set to true.
+<%=vars.product_name%> gathers these statistics when the `--enable-statistics` parameter of the `create region` command of `gfsh` is set to true or in cache.xml the region attribute `statistics-enabled` is set to true.
 
 **Note:**
-Unlike other Geode statistics, these region and entry statistics are not archived and cannot be charted.
+Unlike other <%=vars.product_name%> statistics, these region and entry statistics are not archived and cannot be charted.
 
 **Note:**
 Enabling these statistics requires extra memory per entry. See [Memory Requirements for Cached Data](../../reference/topics/memory_requirements_for_cache_data.html#calculating_memory_requirements).

http://git-wip-us.apache.org/repos/asf/geode/blob/1b84ecbe/geode-docs/managing/troubleshooting/chapter_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/troubleshooting/chapter_overview.html.md.erb b/geode-docs/managing/troubleshooting/chapter_overview.html.md.erb
index 8722a77..b6373b5 100644
--- a/geode-docs/managing/troubleshooting/chapter_overview.html.md.erb
+++ b/geode-docs/managing/troubleshooting/chapter_overview.html.md.erb
@@ -21,39 +21,39 @@ limitations under the License.
 
 This section provides strategies for handling common errors and failure situations.
 
--   **[Producing Artifacts for Troubleshooting](../../managing/troubleshooting/producing_troubleshooting_artifacts.html)**
+-   **[Producing Artifacts for Troubleshooting](producing_troubleshooting_artifacts.html)**
 
     There are several types of files that are critical for troubleshooting.
 
--   **[Diagnosing System Problems](../../managing/troubleshooting/diagnosing_system_probs.html)**
+-   **[Diagnosing System Problems](diagnosing_system_probs.html)**
 
     This section provides possible causes and suggested responses for system problems.
 
--   **[System Failure and Recovery](../../managing/troubleshooting/system_failure_and_recovery.html)**
+-   **[System Failure and Recovery](system_failure_and_recovery.html)**
 
     This section describes alerts for and appropriate responses to various kinds of system failures. It also helps you plan a strategy for data recovery.
 
--   **[Handling Forced Cache Disconnection Using Autoreconnect](../../managing/autoreconnect/member-reconnect.html)**
+-   **[Handling Forced Cache Disconnection Using Autoreconnect](../member-reconnect.html)**
 
-    A Geode member may be forcibly disconnected from a Geode distributed system if the member is unresponsive for a period of time, or if a network partition separates one or more members into a group that is too small to act as the distributed system.
+    A <%=vars.product_name%> member may be forcibly disconnected from a <%=vars.product_name%> distributed system if the member is unresponsive for a period of time, or if a network partition separates one or more members into a group that is too small to act as the distributed system.
 
--   **[Recovering from Application and Cache Server Crashes](../../managing/troubleshooting/recovering_from_app_crashes.html)**
+-   **[Recovering from Application and Cache Server Crashes](recovering_from_app_crashes.html)**
 
     When the application or cache server crashes, its local cache is lost, and any resources it owned (for example, distributed locks) are released. The member must recreate its local cache upon recovery.
 
--   **[Recovering from Machine Crashes](../../managing/troubleshooting/recovering_from_machine_crashes.html)**
+-   **[Recovering from Machine Crashes](recovering_from_machine_crashes.html)**
 
     When a machine crashes because of a shutdown, power loss, hardware failure, or operating system failure, all of its applications and cache servers and their local caches are lost.
 
--   **[Recovering from ConflictingPersistentDataExceptions](../../managing/troubleshooting/recovering_conflicting_data_exceptions.html)**
+-   **[Recovering from ConflictingPersistentDataExceptions](recovering_conflicting_data_exceptions.html)**
 
-    A `ConflictingPersistentDataException` while starting up persistent members indicates that you have multiple copies of some persistent data, and Geode cannot determine which copy to use.
+    A `ConflictingPersistentDataException` while starting up persistent members indicates that you have multiple copies of some persistent data, and <%=vars.product_name%> cannot determine which copy to use.
 
--   **[Preventing and Recovering from Disk Full Errors](../../managing/troubleshooting/prevent_and_recover_disk_full_errors.html)**
+-   **[Preventing and Recovering from Disk Full Errors](prevent_and_recover_disk_full_errors.html)**
 
-    It is important to monitor the disk usage of Geode members. If a member lacks sufficient disk space for a disk store, the member attempts to shut down the disk store and its associated cache, and logs an error message. A shutdown due to a member running out of disk space can cause loss of data, data file corruption, log file corruption and other error conditions that can negatively impact your applications.
+    It is important to monitor the disk usage of <%=vars.product_name%> members. If a member lacks sufficient disk space for a disk store, the member attempts to shut down the disk store and its associated cache, and logs an error message. A shutdown due to a member running out of disk space can cause loss of data, data file corruption, log file corruption and other error conditions that can negatively impact your applications.
 
--   **[Understanding and Recovering from Network Outages](../../managing/troubleshooting/recovering_from_network_outages.html)**
+-   **[Understanding and Recovering from Network Outages](recovering_from_network_outages.html)**
 
     The safest response to a network outage is to restart all the processes and bring up a fresh data set.