geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kmil...@apache.org
Subject [10/94] [abbrv] [partial] incubator-geode git commit: GEODE-1952 Consolidated docs under a single geode-docs directory
Date Fri, 14 Oct 2016 22:17:08 GMT
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/images_svg/tune_cs_event_messaging.svg
----------------------------------------------------------------------
diff --git a/geode-docs/images_svg/tune_cs_event_messaging.svg b/geode-docs/images_svg/tune_cs_event_messaging.svg
new file mode 100644
index 0000000..5af9f53
--- /dev/null
+++ b/geode-docs/images_svg/tune_cs_event_messaging.svg
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="114 214 391 346" width="391pt" height="346pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-04-07 09:33Z</dc:date></metadata><defs><filter id="Shadow" filterUnits="userSpaceOnUse"><feGaussianBlur in="SourceAlpha" result="blur" stdDeviation="1.308"/><feOffset in="blur" result="offset" dx="2.16" dy="2.16"/><feFlood flood-color="#4f4f4f" flood-opacity=".30000001" result="flood"/><feComposite in="flood" in2="offset" operator="in"/></filter><radialGradient cx="0" cy="0" r="1" id="Gradient" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#7ca8c4" stop-opacity=".65"/><stop offset="1" stop-color="#a8c6d9" stop-opacity=".65"/></radialGradient><radialGradient id="Obj_Gradient" xl:href="#Gradient" gradientTransform="translate(253.125 405) scale(138.49842)"/><font-face font-family="Helvetica" font-size="12" units-per-em="1000" un
 derline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><radialGradient id="Obj_Gradient_2" xl:href="#Gradient" gradientTransform="translate(217.125 324) scale(24.337471)"/><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><radialGradient id="Obj_Gradient_3" xl:href="#Gradient" gradientTransform="translate(253.125 513) scale(108.84048)"/><radialGradient id="Obj_Gradient_4" xl:href="#Gradient" gradientTransform="translate(244.125 324) scale(24.337471)"/><radialGradient id="Obj_Gradient_5" xl:href="#Gradient" gradientTransfor
 m="translate(217.125 342) scale(24.337471)"/><radialGradient id="Obj_Gradient_6" xl:href="#Gradient" gradientTransform="translate(244.125 342) scale(24.337471)"/><radialGradient id="Obj_Gradient_7" xl:href="#Gradient" gradientTransform="translate(217.125 360) scale(24.337471)"/><radialGradient id="Obj_Gradient_8" xl:href="#Gradient" gradientTransform="translate(244.125 360) scale(24.337471)"/><radialGradient id="Obj_Gradient_9" xl:href="#Gradient" gradientTransform="translate(217.125 378) scale(24.337471)"/><radialGradient id="Obj_Gradient_a" xl:href="#Gradient" gradientTransform="translate(244.125 378) scale(24.337471)"/><radialGradient id="Obj_Gradient_b" xl:href="#Gradient" gradientTransform="translate(217.125 396) scale(24.337471)"/><radialGradient id="Obj_Gradient_c" xl:href="#Gradient" gradientTransform="translate(244.125 396) scale(24.337471)"/><radialGradient id="Obj_Gradient_d" xl:href="#Gradient" gradientTransform="translate(217.125 486) scale(24.337471)"/><radialGradient 
 id="Obj_Gradient_e" xl:href="#Gradient" gradientTransform="translate(244.125 486) scale(24.337471)"/><radialGradient id="Obj_Gradient_f" xl:href="#Gradient" gradientTransform="translate(217.125 504) scale(24.337471)"/><radialGradient id="Obj_Gradient_10" xl:href="#Gradient" gradientTransform="translate(244.125 504) scale(24.337471)"/><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -6 14 12" markerWidth="14" markerHeight="12" color="#252525"><g><path d="M 11.7222214 0 L 0 -4.395833 L 0 4.395833 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><font-face font-family="Helvetica" font-size="9" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><radialGradient id="Obj_Gradient_11" xl:href=
 "#Gradient" gradientTransform="translate(487.125 405) scale(138.49842)"/><radialGradient id="Obj_Gradient_12" xl:href="#Gradient" gradientTransform="translate(451.125 324) scale(24.337471)"/><radialGradient id="Obj_Gradient_13" xl:href="#Gradient" gradientTransform="translate(487.125 513) scale(108.84048)"/><radialGradient id="Obj_Gradient_14" xl:href="#Gradient" gradientTransform="translate(478.125 324) scale(24.337471)"/><radialGradient id="Obj_Gradient_15" xl:href="#Gradient" gradientTransform="translate(451.125 342) scale(24.337471)"/><radialGradient id="Obj_Gradient_16" xl:href="#Gradient" gradientTransform="translate(478.125 342) scale(24.337471)"/><radialGradient id="Obj_Gradient_17" xl:href="#Gradient" gradientTransform="translate(451.125 360) scale(24.337471)"/><radialGradient id="Obj_Gradient_18" xl:href="#Gradient" gradientTransform="translate(478.125 360) scale(24.337471)"/><radialGradient id="Obj_Gradient_19" xl:href="#Gradient" gradientTransform="translate(451.125 378)
  scale(24.337471)"/><radialGradient id="Obj_Gradient_1a" xl:href="#Gradient" gradientTransform="translate(478.125 378) scale(24.337471)"/><radialGradient id="Obj_Gradient_1b" xl:href="#Gradient" gradientTransform="translate(451.125 486) scale(24.337471)"/><radialGradient id="Obj_Gradient_1c" xl:href="#Gradient" gradientTransform="translate(478.125 486) scale(24.337471)"/><radialGradient id="Obj_Gradient_1d" xl:href="#Gradient" gradientTransform="translate(451.125 504) scale(24.337471)"/><radialGradient id="Obj_Gradient_1e" xl:href="#Gradient" gradientTransform="translate(478.125 504) scale(24.337471)"/><font-face font-family="Helvetica" font-size="14" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="non
 e" fill="none" fill-opacity="1"><title>tune-cs-messaging</title><g><title>Layer 1</title><g><xl:use xl:href="#id3_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id5_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id23_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id25_Graphic" filter="url(#Shadow)"/></g><g id="id3_Graphic"><path d="M 133.785 270 L 246.465 270 C 250.14322 270 253.125 272.98178 253.125 276.66 L 253.125 398.34 C 253.125 402.01822 250.14322 405 246.465 405 L 133.785 405 C 130.10678 405 127.125 402.01822 127.125 398.34 L 127.125 276.66 C 127.125 272.98178 130.10678 270 133.785 270 Z" fill="url(#Obj_Gradient)"/><path d="M 133.785 270 L 246.465 270 C 250.14322 270 253.125 272.98178 253.125 276.66 L 253.125 398.34 C 253.125 402.01822 250.14322 405 246.465 405 L 133.785 405 C 130.10678 405 127.125 402.01822 127.125 398.34 L 127.125 276.66 C 127.125 272.98178 130.10678 270 133.785 270 Z" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".7
 2000003"/><text transform="translate(131.125 274)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="0" y="11" textLength="35.34375">Server</tspan></text></g><rect x="190.125" y="306" width="27" height="18" fill="url(#Obj_Gradient_2)"/><rect x="190.125" y="306" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(192.125 309)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">B</tspan></text><g id="id5_Graphic"><path d="M 133.785 441 L 246.465 441 C 250.14322 441 253.125 443.98178 253.125 447.66 L 253.125 506.34 C 253.125 510.01822 250.14322 513 246.465 513 L 133.785 513 C 130.10678 513 127.125 510.01822 127.125 506.34 L 127.125 447.66 C 127.125 443.98178 130.10678 441 133.785 441 Z" fill="url(#Obj_Gradient_3)"/><path d="M 133.785 441 L 246.465 441 C 250.14322 441 253.125 44
 3.98178 253.125 447.66 L 253.125 506.34 C 253.125 510.01822 250.14322 513 246.465 513 L 133.785 513 C 130.10678 513 127.125 510.01822 127.125 506.34 L 127.125 447.66 C 127.125 443.98178 130.10678 441 133.785 441 Z" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(131.125 445)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="0" y="11" textLength="30.679688">Client</tspan></text></g><rect x="217.125" y="306" width="27" height="18" fill="url(#Obj_Gradient_4)"/><rect x="217.125" y="306" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(219.125 309)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.719238" y="10" textLength="5.5615234">3</tspan></text><rect x="190.125" y="324" width="27" height="18" fill="url(#Obj_Gradient_5)"/><rect x="190.12
 5" y="324" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(192.125 327)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">A</tspan></text><rect x="217.125" y="324" width="27" height="18" fill="url(#Obj_Gradient_6)"/><rect x="217.125" y="324" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(219.125 327)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="6.9384766" y="10" textLength="11.123047">12</tspan></text><rect x="190.125" y="342" width="27" height="18" fill="url(#Obj_Gradient_7)"/><rect x="190.125" y="342" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(192.125 345)" fill="black"><tsp
 an font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">A</tspan></text><rect x="217.125" y="342" width="27" height="18" fill="url(#Obj_Gradient_8)"/><rect x="217.125" y="342" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(219.125 345)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="7.307129" y="10" textLength="5.5615234">1</tspan><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="12.131348" y="10" textLength="5.5615234">1</tspan></text><rect x="190.125" y="360" width="27" height="18" fill="url(#Obj_Gradient_9)"/><rect x="190.125" y="360" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(192.125 363)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight=
 "500" fill="black" x="9.165039" y="10" textLength="6.669922">B</tspan></text><rect x="217.125" y="360" width="27" height="18" fill="url(#Obj_Gradient_a)"/><rect x="217.125" y="360" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(219.125 363)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.719238" y="10" textLength="5.5615234">2</tspan></text><rect x="190.125" y="378" width="27" height="18" fill="url(#Obj_Gradient_b)"/><rect x="190.125" y="378" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(192.125 381)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">A</tspan></text><rect x="217.125" y="378" width="27" height="18" fill="url(#Obj_Gradient_c)"/><rect x="217.125" y="378" wid
 th="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(219.125 381)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="6.9384766" y="10" textLength="11.123047">10</tspan></text><rect x="190.125" y="468" width="27" height="18" fill="url(#Obj_Gradient_d)"/><rect x="190.125" y="468" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(192.125 471)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">A</tspan></text><rect x="217.125" y="468" width="27" height="18" fill="url(#Obj_Gradient_e)"/><rect x="217.125" y="468" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(219.125 471)" fill="black"><tspan font-family
 ="Helvetica" font-size="10" font-weight="500" fill="black" x="9.719238" y="10" textLength="5.5615234">9</tspan></text><rect x="190.125" y="486" width="27" height="18" fill="url(#Obj_Gradient_f)"/><rect x="190.125" y="486" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(192.125 489)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">B</tspan></text><rect x="217.125" y="486" width="27" height="18" fill="url(#Obj_Gradient_10)"/><rect x="217.125" y="486" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(219.125 489)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.719238" y="10" textLength="5.5615234">1</tspan></text><line x1="217.125" y1="400.5" x2="217.125" y2="453.552" marker-en
 d="url(#FilledArrow_Marker)" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(221.125 412)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="8.357422" y="9" textLength="61.035645">send message </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="28.119629" y="20" textLength="19.010742">A-10</tspan></text><text transform="translate(167.82713 392) rotate(-90)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="13.613281" y="9" textLength="50.523926">subscription </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="25.111572" y="20" textLength="25.026855">queue</tspan></text><text transform="translate(180.625 293.75)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="11.106201" y="9" textLength="53.037598">thread    op #</tspan>
 </text><g id="id23_Graphic"><path d="M 367.785 270 L 480.465 270 C 484.14322 270 487.125 272.98178 487.125 276.66 L 487.125 398.34 C 487.125 402.01822 484.14322 405 480.465 405 L 367.785 405 C 364.10678 405 361.125 402.01822 361.125 398.34 L 361.125 276.66 C 361.125 272.98178 364.10678 270 367.785 270 Z" fill="url(#Obj_Gradient_11)"/><path d="M 367.785 270 L 480.465 270 C 484.14322 270 487.125 272.98178 487.125 276.66 L 487.125 398.34 C 487.125 402.01822 484.14322 405 480.465 405 L 367.785 405 C 364.10678 405 361.125 402.01822 361.125 398.34 L 361.125 276.66 C 361.125 272.98178 364.10678 270 367.785 270 Z" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(365.125 274)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="0" y="11" textLength="35.34375">Server</tspan></text></g><rect x="424.125" y="306" width="27" height="18" fill="url(#Obj_Gradient_12)"/><rect x="424.125" y="30
 6" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(426.125 309)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">B</tspan></text><g id="id25_Graphic"><path d="M 367.785 441 L 480.465 441 C 484.14322 441 487.125 443.98178 487.125 447.66 L 487.125 506.34 C 487.125 510.01822 484.14322 513 480.465 513 L 367.785 513 C 364.10678 513 361.125 510.01822 361.125 506.34 L 361.125 447.66 C 361.125 443.98178 364.10678 441 367.785 441 Z" fill="url(#Obj_Gradient_13)"/><path d="M 367.785 441 L 480.465 441 C 484.14322 441 487.125 443.98178 487.125 447.66 L 487.125 506.34 C 487.125 510.01822 484.14322 513 480.465 513 L 367.785 513 C 364.10678 513 361.125 510.01822 361.125 506.34 L 361.125 447.66 C 361.125 443.98178 364.10678 441 367.785 441 Z" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".720000
 03"/><text transform="translate(365.125 445)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="0" y="11" textLength="30.679688">Client</tspan></text></g><rect x="451.125" y="306" width="27" height="18" fill="url(#Obj_Gradient_14)"/><rect x="451.125" y="306" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(453.125 309)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.719238" y="10" textLength="5.5615234">3</tspan></text><rect x="424.125" y="324" width="27" height="18" fill="url(#Obj_Gradient_15)"/><rect x="424.125" y="324" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(426.125 327)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">A
 </tspan></text><rect x="451.125" y="324" width="27" height="18" fill="url(#Obj_Gradient_16)"/><rect x="451.125" y="324" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(453.125 327)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="6.9384766" y="10" textLength="11.123047">12</tspan></text><rect x="424.125" y="342" width="27" height="18" fill="url(#Obj_Gradient_17)"/><rect x="424.125" y="342" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(426.125 345)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">A</tspan></text><rect x="451.125" y="342" width="27" height="18" fill="url(#Obj_Gradient_18)"/><rect x="451.125" y="342" width="27" height="18" stroke="#252525" stroke-linecap="roun
 d" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(453.125 345)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="7.307129" y="10" textLength="5.5615234">1</tspan><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="12.131348" y="10" textLength="5.5615234">1</tspan></text><rect x="424.125" y="360" width="27" height="18" fill="url(#Obj_Gradient_19)"/><rect x="424.125" y="360" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(426.125 363)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">B</tspan></text><rect x="451.125" y="360" width="27" height="18" fill="url(#Obj_Gradient_1a)"/><rect x="451.125" y="360" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/
 ><text transform="translate(453.125 363)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.719238" y="10" textLength="5.5615234">2</tspan></text><rect x="424.125" y="468" width="27" height="18" fill="url(#Obj_Gradient_1b)"/><rect x="424.125" y="468" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(426.125 471)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">A</tspan></text><rect x="451.125" y="468" width="27" height="18" fill="url(#Obj_Gradient_1c)"/><rect x="451.125" y="468" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(453.125 471)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="6.9384766" y="10" textLength="11.123047">10</ts
 pan></text><rect x="424.125" y="486" width="27" height="18" fill="url(#Obj_Gradient_1d)"/><rect x="424.125" y="486" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(426.125 489)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.165039" y="10" textLength="6.669922">B</tspan></text><rect x="451.125" y="486" width="27" height="18" fill="url(#Obj_Gradient_1e)"/><rect x="451.125" y="486" width="27" height="18" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(453.125 489)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="9.719238" y="10" textLength="5.5615234">1</tspan></text><line x1="451.125" y1="387" x2="451.125" y2="453.552" marker-end="url(#FilledArrow_Marker)" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".
 72000003"/><text transform="translate(401.06117 379.625) rotate(-90)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="13.613281" y="9" textLength="50.523926">subscription </tspan><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="25.111572" y="20" textLength="25.026855">queue</tspan></text><text transform="translate(414.625 293.75)" fill="black"><tspan font-family="Helvetica" font-size="9" font-weight="500" fill="black" x="11.106201" y="9" textLength="53.037598">thread    op #</tspan></text><line x1="307.125" y1="225" x2="307.125" y2="549" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(152.5 531.5)" fill="black"><tspan font-family="Helvetica" font-size="14" font-weight="500" fill="black" x="13.494141" y="14" textLength="48.26172">Stage 1</tspan></text><text transform="translate(387.625 531.5)" fill="black"><tspan font-family="Helvetica" font-s
 ize="14" font-weight="500" fill="black" x="13.494141" y="14" textLength="48.26172">Stage 2</tspan></text></g></g></svg>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/images_svg/unbalanced_network_capacity_probs.svg
----------------------------------------------------------------------
diff --git a/geode-docs/images_svg/unbalanced_network_capacity_probs.svg b/geode-docs/images_svg/unbalanced_network_capacity_probs.svg
new file mode 100644
index 0000000..c24c082
--- /dev/null
+++ b/geode-docs/images_svg/unbalanced_network_capacity_probs.svg
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="utf-8" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="113 275 283 271" width="283pt" height="271pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.0.5 <dc:date>2015-04-06 22:58Z</dc:date></metadata><defs><filter id="Shadow" filterUnits="userSpaceOnUse"><feGaussianBlur in="SourceAlpha" result="blur" stdDeviation="1.308"/><feOffset in="blur" result="offset" dx="2.16" dy="2.16"/><feFlood flood-color="#4f4f4f" flood-opacity=".30000001" result="flood"/><feComposite in="flood" in2="offset" operator="in"/></filter><radialGradient cx="0" cy="0" r="1" id="Gradient" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#bed5e4" stop-opacity=".65"/><stop offset="1" stop-color="#a8c6d9" stop-opacity=".65"/></radialGradient><radialGradient id="Obj_Gradient" xl:href="#Gradient" gradientTransform="translate(288 342) scale(67.5)"/><font-face font-family="Helvetica" font-size="12" units-per-em="1000" underline-p
 osition="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><radialGradient id="Obj_Gradient_2" xl:href="#Gradient" gradientTransform="translate(198 528.75) scale(67.5)"/><radialGradient id="Obj_Gradient_3" xl:href="#Gradient" gradientTransform="translate(288 528.75) scale(67.5)"/><radialGradient id="Obj_Gradient_4" xl:href="#Gradient" gradientTransform="translate(378 528.75) scale(67.5)"/><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -5 11 10" markerWidth="11" markerHeight="10" color="#252525"><g><path d="M 8.9444437 0 L 0 -3.3541664 L 0 3.3541664 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.3
 16406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>unbalanced network</title><g><title>Layer 1</title><g><xl:use xl:href="#id3_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id4_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id5_Graphic" filter="url(#Shadow)"/><xl:use xl:href="#id6_Graphic" filter="url(#Shadow)"/></g><g id="id3_Graphic"><path d="M 222.66 288 L 281.34 288 C 285.01822 288 288 290.98178 288 294.66 L 288 335.34 C 288 339.01822 285.01822 342 281.34 342 L 222.66 342 C 218.98178 342 216 339.01822 216 335.34 L 216 294.66 C 216 290.98178 218.98178 288 222.66 288 Z" fill="url(#Obj_Gradient)"/><path d="M 222.66 288 L 281.34 288 C 285.01822 288 288 290.98178 288 294.66 L 288 335.34 C 288 339.01822 285.01822 342 281.34 342 L 222.
 66 342 C 218.98178 342 216 339.01822 216 335.34 L 216 294.66 C 216 290.98178 218.98178 288 222.66 288 Z" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(220 301)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="18.652344" y="11" textLength="26.695312">app1</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="4.3232422" y="25" textLength="55.353516">(producer)</tspan></text></g><g id="id4_Graphic"><path d="M 132.66 474.75 L 191.34 474.75 C 195.01822 474.75 198 477.73178 198 481.41 L 198 522.09 C 198 525.76822 195.01822 528.75 191.34 528.75 L 132.66 528.75 C 128.98178 528.75 126 525.76822 126 522.09 L 126 481.41 C 126 477.73178 128.98178 474.75 132.66 474.75 Z" fill="url(#Obj_Gradient_2)"/><path d="M 132.66 474.75 L 191.34 474.75 C 195.01822 474.75 198 477.73178 198 481.41 L 198 522.09 C 198 525.76822 195.01822 528.75 191.34 528.75 L 132.6
 6 528.75 C 128.98178 528.75 126 525.76822 126 522.09 L 126 481.41 C 126 477.73178 128.98178 474.75 132.66 474.75 Z" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(130 494.75)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="18.652344" y="11" textLength="26.695312">app2</tspan></text></g><g id="id5_Graphic"><path d="M 222.66 474.75 L 281.34 474.75 C 285.01822 474.75 288 477.73178 288 481.41 L 288 522.09 C 288 525.76822 285.01822 528.75 281.34 528.75 L 222.66 528.75 C 218.98178 528.75 216 525.76822 216 522.09 L 216 481.41 C 216 477.73178 218.98178 474.75 222.66 474.75 Z" fill="url(#Obj_Gradient_3)"/><path d="M 222.66 474.75 L 281.34 474.75 C 285.01822 474.75 288 477.73178 288 481.41 L 288 522.09 C 288 525.76822 285.01822 528.75 281.34 528.75 L 222.66 528.75 C 218.98178 528.75 216 525.76822 216 522.09 L 216 481.41 C 216 477.73178 218.98178 474.75 222.66 474.75 Z" stroke="#
 252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(220 494.75)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="18.652344" y="11" textLength="26.695312">app3</tspan></text></g><g id="id6_Graphic"><path d="M 312.66 474.75 L 371.34 474.75 C 375.01822 474.75 378 477.73178 378 481.41 L 378 522.09 C 378 525.76822 375.01822 528.75 371.34 528.75 L 312.66 528.75 C 308.98178 528.75 306 525.76822 306 522.09 L 306 481.41 C 306 477.73178 308.98178 474.75 312.66 474.75 Z" fill="url(#Obj_Gradient_4)"/><path d="M 312.66 474.75 L 371.34 474.75 C 375.01822 474.75 378 477.73178 378 481.41 L 378 522.09 C 378 525.76822 375.01822 528.75 371.34 528.75 L 312.66 528.75 C 308.98178 528.75 306 525.76822 306 522.09 L 306 481.41 C 306 477.73178 308.98178 474.75 312.66 474.75 Z" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(310 494.75)" fill
 ="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="18.652344" y="11" textLength="26.695312">app4</tspan></text></g><rect x="225" y="378" width="54" height="36" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(229 382)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="1.9912109" y="11" textLength="42.017578">network</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" fill="black" x="6.330078" y="25" textLength="33.339844">switch</tspan></text><line x1="252" y1="342" x2="252" y2="370.052" marker-end="url(#FilledArrow_Marker)" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><line x1="252" y1="414" x2="252" y2="466.802" marker-end="url(#FilledArrow_Marker)" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><path d="M 252 414 C 252 414.23856
  333.95304 414.24948 341.45206 466.82013" marker-end="url(#FilledArrow_Marker)" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><path d="M 252 414 C 252 414.24368 250.81243 414.24984 168.56772 470.27445" marker-end="url(#FilledArrow_Marker)" stroke="#252525" stroke-linecap="round" stroke-linejoin="round" stroke-width=".72000003"/><text transform="translate(256 357.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="0" y="10" textLength="38.354492">10 Mbps</tspan></text><text transform="translate(256 448.125)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="0" y="10" textLength="13.901367">10 </tspan><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="0" y="22" textLength="24.453125">Mbps</tspan></text><text transform="translate(346 448.125)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="bl
 ack" x="0" y="10" textLength="13.901367">10 </tspan><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="0" y="22" textLength="24.453125">Mbps</tspan></text><text transform="translate(172.75 454.125)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x="0" y="10" textLength="32.792969">5 Mbps</tspan></text></g></g></svg>

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/autoreconnect/member-reconnect.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/autoreconnect/member-reconnect.html.md.erb b/geode-docs/managing/autoreconnect/member-reconnect.html.md.erb
new file mode 100644
index 0000000..7303800
--- /dev/null
+++ b/geode-docs/managing/autoreconnect/member-reconnect.html.md.erb
@@ -0,0 +1,42 @@
+---
+title:  Handling Forced Cache Disconnection Using Autoreconnect
+---
+
+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.
+
+## How the Autoreconnection Process Works
+
+After being disconnected from a distributed system a Geode member shuts down and then automatically restarts into a "reconnecting" state, while periodically attempting to rejoin the distributed system by contacting a list of known locators. If the member succeeds in reconnecting to a known locator, the member rebuilds its view of the distributed system from existing members and receives a new distributed system ID.
+
+If the member cannot connect to a known locator, the member will then check to see if it itself is a locator (or hosting an embedded locator process). If the member is a locator, then the member does a quorum-based reconnect; it will attempt to contact a quorum of the members that were in the membership view just before it became disconnected. If a quorum of members can be contacted, then startup of the distributed system is allowed to begin. Since the reconnecting member does not know which members survived the network partition event, all members that are in a reconnecting state will keep their UDP unicast ports open and respond to ping requests.
+
+Membership quorum is determined using the same member weighting system used in network partition detection. See [Membership Coordinators, Lead Members and Member Weighting](../network_partitioning/membership_coordinators_lead_members_and_weighting.html#concept_23C2606D59754106AFBFE17515DF4330).
+
+Note that when a locator is in the reconnecting state, it provides no discovery services for the distributed system.
+
+After the cache has reconnected, applications must fetch a reference to the new Cache, Regions, DistributedSystem and other artifacts. Old references will continue to throw cancellation exceptions like `CacheClosedException(cause=ForcedDisconnectException)`.
+
+See the Geode `DistributedSystem` and `Cache` Java API documentation for more information.
+
+## Managing the Autoreconnection Process
+
+By default a Geode member will try to reconnect until it is told to stop by using the `DistributedSystem.stopReconnecting()` or `Cache.stopReconnecting()` method. You can disable automatic reconnection entirely by setting `disable-auto-reconnect` Geode property to "true."
+
+You can use `DistributedSystem` and `Cache` callback methods to perform actions during the reconnect process, or to cancel the reconnect process if necessary.
+
+The `DistributedSystem` and `Cache` API provide several methods you can use to take actions while a member is reconnecting to the distributed system:
+
+-   `DistributedSystem.isReconnecting()` returns true if the member is in the process of reconnecting and recreating the cache after having been removed from the system by other members.
+-   `DistributedSystem.waitUntilReconnected(long, TimeUnit)` waits for a period of time, and then returns a boolean value to indicate whether the member has reconnected to the DistributedSystem. Use a value of -1 seconds to wait indefinitely until the reconnect completes or the member shuts down. Use a value of 0 seconds as a quick probe to determine if the member has reconnected.
+-   `DistributedSystem.getReconnectedSystem()` returns the reconnected DistributedSystem.
+-   `DistributedSystem.stopReconnecting()` stops the reconnection process and ensures that the DistributedSystem stays in a disconnected state.
+-   `Cache.isReconnecting()` returns true if the cache is attempting to reconnect to a distributed system.
+-   `Cache.waitForReconnect(long, TimeUnit)` waits for a period of time, and then returns a boolean value to indicate whether the DistributedSystem has reconnected. Use a value of -1 seconds to wait indefinitely until the reconnect completes or the cache shuts down. Use a value of 0 seconds as a quick probe to determine if the member has reconnected.
+-   `Cache.getReconnectedCache()` returns the reconnected Cache.
+-   `Cache.stopReconnecting()` stops the reconnection process and ensures that the DistributedSystem stays in a disconnected state.
+
+## Operator Intervention
+
+You may need to intervene in the autoreconnection process if processes or hardware have crashed or are otherwise shut down before the network connection is healed. In this case the members in a "reconnecting" state will not be able to find the lost processes through UDP probes and will not rejoin the system until they are able to contact a locator.
+
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/book_intro.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/book_intro.html.md.erb b/geode-docs/managing/book_intro.html.md.erb
new file mode 100644
index 0000000..568203a
--- /dev/null
+++ b/geode-docs/managing/book_intro.html.md.erb
@@ -0,0 +1,52 @@
+---
+title:  Managing Apache Geode
+---
+
+*Managing Apache Geode* describes how to plan and implement tasks associated with managing, monitoring, and troubleshooting Apache Geode.
+
+-   **[Apache Geode Management and Monitoring](../managing/management/management_and_monitoring.html)**
+
+    Apache Geode provides APIs and tools for managing your distributed system and monitoring the health of your distributed system members.
+
+-   **[Managing Heap and Off-heap Memory](../managing/heap_use/heap_management.html)**
+
+    By default, Apache Geode uses the JVM heap. Apache Geode also offers an option to store data off heap. This section describes how to manage heap and off-heap memory to best support your application.
+
+-   **[Disk Storage](../managing/disk_storage/chapter_overview.html)**
+
+    With Apache Geode disk stores, you can persist data to disk as a backup to your in-memory copy and overflow data to disk when memory use gets too high.
+
+-   **[Cache and Region Snapshots](../managing/cache_snapshots/chapter_overview.html)**
+
+    Snapshots allow you to save region data and reload it later. A typical use case is loading data from one environment into another, such as capturing data from a production system and moving it into a smaller QA or development system.
+
+-   **[Region Compression](../managing/region_compression/region_compression.html)**
+
+    This section describes region compression, its benefits and usage.
+
+-   **[Network Partitioning](../managing/network_partitioning/chapter_overview.html)**
+
+    Apache Geode architecture and management features help detect and resolve network partition problems.
+
+-   **[Security](../managing/security/chapter_overview.html)**
+
+    The security framework establishes trust by authenticating components 
+    and members upon connection. It facilitates the authorization of operations.
+
+-   **[Performance Tuning and Configuration](../managing/monitor_tune/chapter_overview.html)**
+
+    A collection of tools and controls allow you to monitor and adjust Apache Geode performance.
+
+-   **[Logging](../managing/logging/logging.html)**
+
+    Comprehensive logging messages help you confirm system configuration and debug problems in configuration and code.
+
+-   **[Statistics](../managing/statistics/chapter_overview.html)**
+
+    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.
+
+-   **[Troubleshooting and System Recovery](../managing/troubleshooting/chapter_overview.html)**
+
+    This section provides strategies for handling common errors and failure situations.
+
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/cache_snapshots/chapter_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/cache_snapshots/chapter_overview.html.md.erb b/geode-docs/managing/cache_snapshots/chapter_overview.html.md.erb
new file mode 100644
index 0000000..38b4251
--- /dev/null
+++ b/geode-docs/managing/cache_snapshots/chapter_overview.html.md.erb
@@ -0,0 +1,34 @@
+---
+title:  Cache and Region Snapshots
+---
+
+Snapshots allow you to save region data and reload it later. A typical use case is loading data from one environment into another, such as capturing data from a production system and moving it into a smaller QA or development system.
+
+In effect, you can load data from one distributed system into another distributed system. Administrators export a snapshot of a region or an entire cache (multiple regions) and later import the snapshot into another region or distributed system by using the `RegionSnapshotService` or `CacheSnapshotService` interface and the `Region.getSnapshotService` or `Cache.getSnapshotService` method.
+
+The snapshot file is a binary file that contains all data from a particular region. The binary format contains serialized key/value pairs and supports PDX type registry to allow the deserialization of PDX data. The snapshot can be directly imported into a region or read entry-by-entry for further processing or transformation into other formats.
+
+**Note:**
+The previous `Region.loadSnapshot` and `Region.saveSnapshot` APIs have been deprecated. Data written in this format is not compatible with the new APIs.
+
+-   **[Usage and Performance Notes](../../managing/cache_snapshots/using_cache_and_region_snapshots.html)**
+
+    Optimize the cache and region snapshot feature by understanding how it performs.
+
+-   **[Exporting Cache and Region Snapshots](../../managing/cache_snapshots/exporting_a_snapshot.html)**
+
+    To save Geode cache or region data to a snapshot that you can later load into another distributed system or region, use the `cache.getSnapshotService.save` API, `region.getSnapshotService.save` API, or the `gfsh` command-line interface (`export data`).
+
+-   **[Importing Cache and Region Snapshots](../../managing/cache_snapshots/importing_a_snapshot.html)**
+
+    To import a Geode cache or region data snapshot that you previously exported into another distributed system or region, use the `cache.getSnapshotService.load` API, `region.getSnapshotService.load` API, or the `gfsh` command-line interface (`import data`).
+
+-   **[Filtering Entries During Import or Export](../../managing/cache_snapshots/filtering_snapshot_entries.html)**
+
+    You can customize your snapshot by filtering entries during the import or export of a region or a cache.
+
+-   **[Reading Snapshots Programmatically](../../managing/cache_snapshots/read_snapshots_programmatically.html)**
+
+    You can read a snapshot entry-by-entry for further processing or transformation into other formats.
+
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/cache_snapshots/exporting_a_snapshot.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/cache_snapshots/exporting_a_snapshot.html.md.erb b/geode-docs/managing/cache_snapshots/exporting_a_snapshot.html.md.erb
new file mode 100644
index 0000000..1cd2065
--- /dev/null
+++ b/geode-docs/managing/cache_snapshots/exporting_a_snapshot.html.md.erb
@@ -0,0 +1,57 @@
+---
+title:  Exporting Cache and Region Snapshots
+---
+
+To save Geode cache or region data to a snapshot that you can later load into another distributed system or region, use the `cache.getSnapshotService.save` API, `region.getSnapshotService.save` API, or the `gfsh` command-line interface (`export data`).
+
+If an error occurs during export, the export halts and the snapshot operation is canceled. Typical errors that halt an export include scenarios such as full disk, problems with file permissions, and network partitioning.
+
+## <a id="concept_D1A4D9677F4146078F65C73BF436C19D__section_98B33450FD95450EAC027384EE82E00C" class="no-quick-link"></a>Exporting Cache Snapshots
+
+When you export an entire cache, it exports all regions in the cache as individual snapshot files into a directory. If no directory is specified, the default is the current directory. A snapshot file is created for each region, and the export operation automatically names each snapshot filename using the following convention:
+
+`snapshot-<region>[-<subregion>]*`
+
+When the export operation writes the snapshot filename, it replaces each forward slash ('/') in the region path with a dash ('-').
+
+**Using Java API:**
+
+``` pre
+File mySnapshotDir = ...
+Cache cache = ...
+
+cache.getSnapshotService().save(mySnapshotDir, SnapshotFormat.GEMFIRE);
+```
+
+Optionally, you can set a filter on the snapshot entries during the export. See [Filtering Entries During Import or Export](filtering_snapshot_entries.html#concept_7E1F89E70A25465EBEBA584FADFEF353) for an example.
+
+## <a id="concept_D1A4D9677F4146078F65C73BF436C19D__section_30C1BBB41C194825A46E49E5756369D6" class="no-quick-link"></a>Exporting a Region Snapshot
+
+You can also export a specific region using the following API or gfsh command:
+
+**Java API:**
+
+``` pre
+File mySnapshot = ...
+Region<String, MyObject> region = ... 
+
+region.getSnapshotService().save(mySnapshot, SnapshotFormat.GEMFIRE);
+```
+
+**gfsh:**
+
+Open a gfsh prompt. After connecting to a Geode distributed system, at the prompt type:
+
+``` pre
+gfsh>export data --region=Region --file=filename.gfd 
+--member=membername
+```
+
+where *Region* corresponds to the name of the region that you want to export, *filename* (must end in .gfd) corresponds to the name of the export file and *membername* corresponds to a member where the region to export is hosted. For example:
+
+``` pre
+gfsh>export data --region=region1 --file=region1_2012_10_10.gfd 
+--member=server1
+```
+
+The snapshot file will be written on the remote member at the location specified by the `--file` argument. For example, in the example command above, the `region1_2012_10_10.gfd` file will be written in the working directory of `server1`. For more information on this command, see [export data](../../tools_modules/gfsh/command-pages/export.html#topic_263B70069BFC4A7185F86B3272011734).

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/cache_snapshots/filtering_snapshot_entries.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/cache_snapshots/filtering_snapshot_entries.html.md.erb b/geode-docs/managing/cache_snapshots/filtering_snapshot_entries.html.md.erb
new file mode 100644
index 0000000..27b87c7
--- /dev/null
+++ b/geode-docs/managing/cache_snapshots/filtering_snapshot_entries.html.md.erb
@@ -0,0 +1,29 @@
+---
+title:  Filtering Entries During Import or Export
+---
+
+You can customize your snapshot by filtering entries during the import or export of a region or a cache.
+
+For example, use filters to limit the export of data to a certain date range. If you set up a filter on the import or export of a cache, the filter is applied to every single region in the cache.
+
+The following example filters snapshot data by even numbered keys.
+
+``` pre
+File mySnapshot = ...
+Region<Integer, MyObject> region = ...
+
+SnapshotFilter<Integer, MyObject> even = new SnapshotFilter<Integer, MyObject>() {
+  @Override
+  public boolean accept(Entry<Integer, MyObject> entry) {
+    return entry.getKey() % 2 == 0;
+  }
+};
+
+RegionSnapshotService<Integer, MyObject> snapsrv = region.getSnapshotService();
+SnapshotOptions<Integer, MyObject> options = rss.createOptions().setFilter(even);
+
+// only save cache entries with an even key
+snapsrv.save(mySnapshot, SnapshotFormat.GEMFIRE, options);
+```
+
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/cache_snapshots/importing_a_snapshot.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/cache_snapshots/importing_a_snapshot.html.md.erb b/geode-docs/managing/cache_snapshots/importing_a_snapshot.html.md.erb
new file mode 100644
index 0000000..626e0df
--- /dev/null
+++ b/geode-docs/managing/cache_snapshots/importing_a_snapshot.html.md.erb
@@ -0,0 +1,64 @@
+---
+title:  Importing Cache and Region Snapshots
+---
+
+To import a Geode cache or region data snapshot that you previously exported into another distributed system or region, use the `cache.getSnapshotService.load` API, `region.getSnapshotService.load` API, or the `gfsh` command-line interface (`import data`).
+
+## <a id="concept_62B1E24DA7F342E9BB16C0818F7A7B70__section_4B2C73CA1A734D9D96693A52BF99D75A" class="no-quick-link"></a>Import Requirements
+
+Before you import a region snapshot:
+
+-   Make sure the cache is configured correctly. Configure all registered PdxSerializers, DataSerializers, and Instantiators; create regions; and ensure the classpath contains any required classes.
+-   When you import a snapshot containing PDX types, you must wait until the exported type definitions are imported into the cache before inserting data that causes type conflicts. It is recommended that you wait for the import to complete before inserting data.
+
+## <a id="concept_62B1E24DA7F342E9BB16C0818F7A7B70__section_F5FA11694BFC46D4A813A259FE670C69" class="no-quick-link"></a>Import Limitations
+
+During an import, the `CacheWriter` and `CacheListener` callbacks are not invoked.
+
+If an error occurs during import, the import is halted and the region will contain some but not all snapshot data.
+
+The state of a cache client is indeterminate after an import. It is likely that the data in the client's cache is inconsistent with the imported data. Take the client offline during the import and restart it after the import completes.
+
+## <a id="concept_62B1E24DA7F342E9BB16C0818F7A7B70__section_4F1A3A60FABA49A295CA18FBF572998D" class="no-quick-link"></a>Importing Cache Snapshots
+
+When you import a cache snapshot, the snapshot file is imported into the same region (match determined by name) that was used during snapshot export. When you import a cache, you import all snapshot files located within a directory into the cache. The API attempts to load all files in the specified directory.
+
+**Java API:**
+
+``` pre
+File mySnapshotDir = ...
+Cache cache = ...
+
+cache.getSnapshotService().load(mySnapshotDir, SnapshotFormat.GEMFIRE);
+```
+
+## <a id="concept_62B1E24DA7F342E9BB16C0818F7A7B70__section_97054643976345A099A7BDDC63DE30E9" class="no-quick-link"></a>Importing a Region Snapshot
+
+**Java API:**
+
+``` pre
+File mySnapshot = ...
+Region<String, MyObject> region = ...
+
+region.getSnapshotService().load(mySnapshot, SnapshotFormat.GEMFIRE);
+```
+
+**gfsh:**
+
+Open a gfsh prompt. After connecting to a Geode distributed system, at the prompt type:
+
+``` pre
+gfsh>import data --region=Region --file=filename.gfd 
+--member=membername
+```
+
+where *Region* corresponds to the name of the region that you want to import data into; *filename* (must end in .gfd) corresponds to the name of the file to be imported; and *membername* corresponds to the member where the region to be imported is hosted. For example:
+
+``` pre
+gfsh>import data --region=region1 --file=region1_2012_10_10.gfd 
+--member=server2
+```
+
+The snapshot file must already reside on the specified member at the location specified in the `--file` argument before import.
+
+For more information on this command, see [import data](../../tools_modules/gfsh/command-pages/import.html#topic_jw2_2ld_2l).

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/cache_snapshots/read_snapshots_programmatically.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/cache_snapshots/read_snapshots_programmatically.html.md.erb b/geode-docs/managing/cache_snapshots/read_snapshots_programmatically.html.md.erb
new file mode 100644
index 0000000..6d0d0ca
--- /dev/null
+++ b/geode-docs/managing/cache_snapshots/read_snapshots_programmatically.html.md.erb
@@ -0,0 +1,26 @@
+---
+title:  Reading Snapshots Programmatically
+---
+
+You can read a snapshot entry-by-entry for further processing or transformation into other formats.
+
+The following is an example of a snapshot reader that processes entries from a previously generated snapshot file.
+
+``` pre
+File mySnapshot = ...
+SnapshotIterator<String, MyObject> iter = SnapshotReader.read(mySnapshot);
+try {
+  while (iter.hasNext()) {
+    Entry<String, MyObject> entry = iter.next();
+
+    String key = entry.getKey();
+    MyObject value = entry.getValue();
+
+    System.out.println(key + " = " + value);
+  }
+} finally {
+  iter.close();
+}
+```
+
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/cache_snapshots/using_cache_and_region_snapshots.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/cache_snapshots/using_cache_and_region_snapshots.html.md.erb b/geode-docs/managing/cache_snapshots/using_cache_and_region_snapshots.html.md.erb
new file mode 100644
index 0000000..ccf5382
--- /dev/null
+++ b/geode-docs/managing/cache_snapshots/using_cache_and_region_snapshots.html.md.erb
@@ -0,0 +1,23 @@
+---
+title:  Usage and Performance Notes
+---
+
+Optimize the cache and region snapshot feature by understanding how it performs.
+
+## <a id="concept_49775DA33EFF4534950E1A60158F4B36__section_D1AB128682CA41D2BEFB429BED892ABE" class="no-quick-link"></a>Cache Consistency and Concurrent Operations
+
+Importing and exporting region data is an administrative operation, and certain simultaneous runtime conditions can cause the import or export operation to fail such as when you are rebalancing partitioned region buckets or experience a network partition event. This behavior is expected, and you should retry the operation. Redoing an export overwrites an incomplete snapshot file, and redoing an import updates partially imported data.
+
+The snapshot feature does not guarantee consistency. Concurrent cache operations during a snapshot import or export can cause data consistency issues. If snapshot consistency is important, we recommend that you take your application offline before export and import, to provide a quiet period ensures data consistency in your snapshot.
+
+For example, modifications to region entries during an export can result in a snapshot that contains some but not all updates. If entries { A, B } are updated to { A', B'} during the export, the snapshot can contain { A, B' } depending on the write order. Also, modifications to region entries during an import can cause lost updates in the cache. If the region contains entries { A, B } and the snapshot contains { A', B' }, concurrent updates { A\*, B\* } can result in the region containing { A\*, B' } after the import completes.
+
+The default behavior is to perform all I/O operations on the node where the snapshot operations are invoked. This will involve either collecting or dispersing data over the network if the region is a partitioned region.
+
+## <a id="concept_49775DA33EFF4534950E1A60158F4B36__section_2C90FE1552D94AD08D1E5F3035153E0E" class="no-quick-link"></a>Performance Considerations
+
+When using the data snapshot feature, be aware of the following performance considerations:
+
+-   Importing and exporting cache or region snapshots causes additional CPU and network load. You may need to increase CPU capacity or network bandwidth depending on your applications and infrastructure. In addition, if you export regions that have been configured to overflow to disk, you may require additional disk I/O to perform the export.
+-   When exporting partitioned region data, allocate additional heap memory so the member performing the export can buffer data gathered from other cache members. Allocate at least 10MB per member to your heap in addition to whatever configuration is necessary to support your application or cache.
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/disk_storage/backup_restore_disk_store.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/disk_storage/backup_restore_disk_store.html.md.erb b/geode-docs/managing/disk_storage/backup_restore_disk_store.html.md.erb
new file mode 100644
index 0000000..173cdfe
--- /dev/null
+++ b/geode-docs/managing/disk_storage/backup_restore_disk_store.html.md.erb
@@ -0,0 +1,172 @@
+---
+title:  Creating Backups for System Recovery and Operational Management
+---
+
+A backup is a copy of persisted data from a disk store. A backup is used to restore the disk store to the state it was in when the backup was made. The appropriate back up and restore procedures differ based upon whether the distributed system is online or offline. An online system has currently running members. An offline system does not have any running members.
+
+-   [Making a Backup While the System Is Online](backup_restore_disk_store.html#backup_restore_disk_store__section_63AB5917BF24432898A79DBE8E4071FF)
+-   [What a Full Online Backup Saves](backup_restore_disk_store.html#backup_restore_disk_store__section_C08E52E65DAD4CD5AE076BBDCF1DB340)
+-   [What an Incremental Online Backup Saves](backup_restore_disk_store.html#backup_restore_disk_store__section_59E23EEA4AB24374A45B99A8B44FD49B)
+-   [Disk Store Backup Directory Structure and Contents](backup_restore_disk_store.html#backup_restore_disk_store__section_22809A237A344015B40C962B704D8F34)
+-   [Offline Members—Manual Catch-Up to an Online Backup](backup_restore_disk_store.html#backup_restore_disk_store__section_6F998080AF7640D1A9E951D155A75E3A)
+-   [Restore Using a Backup Made While the System Was Online](backup_restore_disk_store.html#backup_restore_disk_store__section_D08DC489B9D947DE97B8F96261E4A977)
+
+## <a id="backup_restore_disk_store__section_63AB5917BF24432898A79DBE8E4071FF" class="no-quick-link"></a>Making a Backup While the System Is Online
+
+The gfsh command `backup disk-store` creates a backup of the disk stores for all members running in the distributed system. The backup works by passing commands to the running system members; therefore, the members need to be online for this operation to succeed. Each member with persistent data creates a backup of its own configuration and disk stores. The backup does not block any activities within the distributed system, but it does use resources.
+
+**Note:**
+Do not try to create backup files from a running system by using your operating system's file copy commands. This would create incomplete and unusable copies.
+
+**Preparing to Make a Backup**
+
+-   Consider compacting your disk store before making a backup. If auto-compaction is turned off, you may want to do a manual compaction to save on the quantity of data copied over the network by the backup. For more information on configuring a manual compaction, see [Manual Compaction](compacting_disk_stores.html#compacting_disk_stores__li_63CF8C35153D4173AADF7DC35FEC61F9).
+-   Run the backup during a period of low activity in your system. The backup does not block system activities, but it uses file system resources on all hosts in your distributed system, and it can affect performance.
+-   Configure each member with any additional files or directories to be backed up by modifying the member's `cache.xml` file. Additional items that ought to be included in the backup:
+
+    -   application jar files
+    -   other files that the application needs when starting, such as a file that sets the classpath
+
+    For example, to include file `myExtraBackupStuff` in the backup, the `cache.xml` file specification of the data store would include:
+
+    ``` pre
+    <backup>./myExtraBackupStuff</backup>
+    ```
+
+    Directories are recursively copied, with any disk stores that are found excluded from this user-specified backup.
+
+-   Back up to a SAN (recommended) or to a directory that all members can access. Make sure the directory exists and has the proper permissions for all members to write to the directory and create subdirectories.
+
+    The directory specified for the backup can be used multiple times. Each time a backup is made, a new subdirectory is created within the specified directory, and that new subdirectory's name represents the date and time.
+
+    You can use one of two locations for the backup:
+
+    -   a single physical location, such as a network file server, for example:
+
+        ``` pre
+        /export/fileServerDirectory/gemfireBackupLocation
+        ```
+
+    -   a directory that is local to all host machines in the system, for example:
+
+        ``` pre
+        ./gemfireBackupLocation
+        ```
+
+-   Make sure all members with persistent data are running in the system, because offline members cannot back up their disk stores. Output from the backup command will not identify members hosting replicated regions that are offline.
+
+**How to Do a Full Online Backup**
+
+1.  If auto-compaction is disabled, and manual compaction is needed:
+
+    ``` pre
+    gfsh>compact disk-store --name=Disk1
+    ```
+
+2.  Run the `gfsh backup                             disk-store` command, specifying the backup directory location. For example:
+
+    ``` pre
+    gfsh>backup disk-store --dir=/export/fileServerDirectory/gemfireBackupLocation
+    ```
+
+    The output will list information for each member that has successfully backed up disk stores. The tabular information will contain the member's name, its UUID, the directory backed up, and the host name of the member.
+
+    Any online member that fails to complete its backup will leave a file named `INCOMPLETE_BACKUP` in its highest level backup directory. The existence of this file identifies that the backup file contains only a partial backup, and it cannot be used in a restore operation.
+
+3.  Validate the backup for later recovery use. On the command line, each backup can be checked with commands such as
+
+    ``` pre
+    cd 2010-04-10-11-35/straw_14871_53406_34322/diskstores/ds1
+    gfsh validate offline-disk-store --name=ds1 --disk-dirs=/home/dsmith/dir1
+    ```
+
+**How to Do an Incremental Backup**
+
+An incremental backup contains items that have changed since a previous backup was made.
+
+To do an incremental backup, specify the backup directory that the incremental backup will be based upon with the `--baseline-dir` argument. For example:
+
+``` pre
+gfsh>backup disk-store --dir=/export/fileServerDirectory/gemfireBackupLocation
+--baseline-dir=/export/fileServerDirectory/gemfireBackupLocation/2012-10-01-12-30
+```
+
+The output will appear the same as the output for a full online backup.
+
+Any online member that fails to complete its incremental backup will leave a file named `INCOMPLETE_BACKUP` in its highest level backup directory. The existence of this file identifies that the backup file contains only a partial backup, and it cannot be used in a restore operation. The next time a backup is made, a full backup will be made.
+
+## <a id="backup_restore_disk_store__section_C08E52E65DAD4CD5AE076BBDCF1DB340" class="no-quick-link"></a>What a Full Online Backup Saves
+
+For each member with persistent data, a full backup includes the following:
+
+-   Disk store files for all members containing persistent region data.
+-   Files and directories specified in the `cache.xml` configuration file as `<backup>` elements. For example:
+
+    ``` pre
+    <backup>./systemConfig/gf.jar</backup>
+    <backup>/users/user/gfSystemInfo/myCustomerConfig.doc</backup>
+    ```
+
+-   Deployed JAR files that were deployed using the gfsh [deploy](../../tools_modules/gfsh/command-pages/deploy.html) command.
+-   Configuration files from the member startup.
+    -   `gemfire.properties`, including the properties with which the member was started.
+    -   `cache.xml`, if used.
+
+    These configuration files are not automatically restored, to avoid interfering with more recent configurations. In particular, if these are extracted from a master `jar` file, copying the separate files into your working area can override the files in the `jar`. If you want to back up and restore these files, add them as custom `<backup>` elements.
+-   A restore script, called `restore.bat` on Windows, and called `restore.sh` on Linux. This script may later be used to do a restore. The script copies files back to their original locations.
+
+## <a id="backup_restore_disk_store__section_59E23EEA4AB24374A45B99A8B44FD49B" class="no-quick-link"></a>What an Incremental Online Backup Saves
+
+An incremental backup saves the difference between the last backup and the current data. An incremental backup copies only operations logs that are not already present in the baseline directories for each member. For incremental backups, the restore script contains explicit references to operation logs in one or more previously chained incremental backups. When the restore script is run from an incremental backup, it also restores the operation logs from previous incremental backups that are part of the backup chain.
+
+If members are missing from the baseline directory because they were offline or did not exist at the time of the baseline backup, those members place full backups of all their files into the incremental backup directory.
+
+## <a id="backup_restore_disk_store__section_22809A237A344015B40C962B704D8F34" class="no-quick-link"></a>Disk Store Backup Directory Structure and Contents
+
+``` pre
+$ cd thebackupdir
+$ ls -R
+./2012-10-18-13-44-53:
+dasmith_e6410_server1_8623_v1_33892 dasmith_e6410_server2_8940_v2_45565
+
+./2012-10-18-13-44-53/dasmith_e6410_server1_8623_v1_33892:
+config diskstores README.txt restore.sh user
+
+./2012-10-18-13-44-53/dasmith_e6410_server1_8623_v1_33892/config:
+cache.xml
+
+./2012-10-18-13-44-53/dasmith_e6410_server1_8623_v1_33892/diskstores:
+DEFAULT
+
+./2012-10-18-13-44-53/dasmith_e6410_server1_8623_v1_33892/diskstores/DEFAULT:
+dir0
+
+./2012-10-18-13-44-53/dasmith_e6410_server1_8623_v1_33892/diskstores/DEFAULT/dir0:
+BACKUPDEFAULT_1.crf BACKUPDEFAULT_1.drf BACKUPDEFAULT.if
+
+./2012-10-18-13-44-53/dasmith_e6410_server1_8623_v1_33892/user:
+```
+
+## <a id="backup_restore_disk_store__section_6F998080AF7640D1A9E951D155A75E3A" class="no-quick-link"></a>Offline Members—Manual Catch-Up to an Online Backup
+
+If you must have a member offline during an online backup, you can manually back up its disk stores. Bring this member’s files into the online backup framework manually, and create a restore script by hand starting with a copy of another member’s script:
+
+1.  Duplicate the directory structure of a backed up member for this member.
+2.  Rename directories as needed to reflect this member’s particular backup, including disk store names.
+3.  Clear out all files other than the restore script.
+4.  Copy in this member’s files.
+5.  Modify the restore script to work for this member.
+
+## <a id="backup_restore_disk_store__section_D08DC489B9D947DE97B8F96261E4A977" class="no-quick-link"></a>Restore Using a Backup Made While the System Was Online
+
+The `restore.sh` or `restore.bat` script copies files back to their original locations.
+
+1.  Restore your disk stores while cache members are offline and the system is down.
+2.  Look at each of the restore scripts to see where they will place the files and make sure the destination locations are ready. A restore script will refuse to copy over files with the same names.
+3.  Run each restore script on the host where the backup originated.
+
+The restore copies these files back to their original location:
+
+-   Disk store files for all stores containing persistent region data.
+-   Any files or directories you have configured to be backed up in the `cache.xml` `<backup>` elements.
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/disk_storage/chapter_overview.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/disk_storage/chapter_overview.html.md.erb b/geode-docs/managing/disk_storage/chapter_overview.html.md.erb
new file mode 100644
index 0000000..70cba24
--- /dev/null
+++ b/geode-docs/managing/disk_storage/chapter_overview.html.md.erb
@@ -0,0 +1,39 @@
+---
+title:  Disk Storage
+---
+
+With Apache Geode disk stores, you can persist data to disk as a backup to your in-memory copy and overflow data to disk when memory use gets too high.
+
+-   **[How Disk Stores Work](../../managing/disk_storage/how_disk_stores_work.html)**
+
+    Overflow and persistence use disk stores individually or together to store data.
+
+-   **[Disk Store File Names and Extensions](../../managing/disk_storage/file_names_and_extensions.html)**
+
+    Disk store files include store management files, access control files, and the operation log, or oplog, files, consisting of one file for deletions and another for all other operations.
+
+-   **[Disk Store Operation Logs](../../managing/disk_storage/operation_logs.html)**
+
+    At creation, each operation log is initialized at the disk store's `max-oplog-size`, with the size divided between the `crf` and `drf` files. When the oplog is closed, Apache Geode shrinks the files to the space used in each file.
+
+-   **[Configuring Disk Stores](../../managing/disk_storage/overview_using_disk_stores.html)**
+
+    In addition to the disk stores you specify, Apache Geode has a default disk store that it uses when disk use is configured with no disk store name specified. You can modify default disk store behavior.
+
+-   **[Optimizing a System with Disk Stores](../../managing/disk_storage/optimize_availability_and_performance.html)**
+
+    Optimize availability and performance by following the guidelines in this section.
+
+-   **[Start Up and Shut Down with Disk Stores](../../managing/disk_storage/starting_system_with_disk_stores.html)**
+
+    This section describes what happens during startup and shutdown and provides procedures for those operations.
+
+-   **[Disk Store Management](../../managing/disk_storage/managing_disk_stores.html)**
+
+    The `gfsh` command-line tool has a number of options for examining and managing your disk stores. The `gfsh` tool, the `cache.xml` file and the DiskStore APIs are your management tools for online and offline disk stores.
+
+-   **[Creating Backups for System Recovery and Operational Management](../../managing/disk_storage/backup_restore_disk_store.html)**
+
+    A backup is a copy of persisted data from a disk store. A backup is used to restore the disk store to the state it was in when the backup was made. The appropriate back up and restore procedures differ based upon whether the distributed system is online or offline. An online system has currently running members. An offline system does not have any running members.
+
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/disk_storage/compacting_disk_stores.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/disk_storage/compacting_disk_stores.html.md.erb b/geode-docs/managing/disk_storage/compacting_disk_stores.html.md.erb
new file mode 100644
index 0000000..8357948
--- /dev/null
+++ b/geode-docs/managing/disk_storage/compacting_disk_stores.html.md.erb
@@ -0,0 +1,116 @@
+---
+title:  Running Compaction on Disk Store Log Files
+---
+
+<a id="compacting_disk_stores__section_64BA304595364E38A28098EB09494531"></a>
+When a cache operation is added to a disk store, any preexisting operation record for the same entry becomes obsolete, and Apache Geode marks it as garbage. For example, when you create an entry, the create operation is added to the store. If you update the entry later, the update operation is added and the create operation becomes garbage. Geode does not remove garbage records as it goes, but it tracks the percentage of garbage in each operation log, and provides mechanisms for removing garbage to compact your log files.
+
+Geode compacts an old operation log by copying all non-garbage records into the current log and discarding the old files. As with logging, oplogs are rolled as needed during compaction to stay within the max oplog setting.
+
+You can configure the system to automatically compact any closed operation log when its garbage content reaches a certain percentage. You can also manually request compaction for online and offline disk stores. For the online disk store, the current operation log is not available for compaction, no matter how much garbage it contains.
+
+## <a id="compacting_disk_stores__section_98C6B6F48E4F4F0CB7749E426AF4D647" class="no-quick-link"></a>Log File Compaction for the Online Disk Store
+
+<img src="../../images/diskStores-3.gif" id="compacting_disk_stores__image_7E34CC58B13548B196DAA15F5B0A0ECA" class="image" />
+
+Offline compaction runs essentially in the same way, but without the incoming cache operations. Also, because there is no current open log, the compaction creates a new one to get started.
+
+## <a id="compacting_disk_stores__section_96E774B5502648458E7742B37CA235FF" class="no-quick-link"></a>Run Online Compaction
+
+Old log files become eligible for online compaction when their garbage content surpasses a configured percentage of the total file. A record is garbage when its operation is superseded by a more recent operation for the same object. During compaction, the non-garbage records are added to the current log along with new cache operations. Online compaction does not block current system operations.
+
+-   **Automatic compaction**. When `auto-compact` is true, Geode automatically compacts each oplog when its garbage content surpasses the `compaction-threshold`. This takes cycles from your other operations, so you may want to disable this and only do manual compaction, to control the timing.
+-   **Manual compaction**. To run manual compaction:
+    -   Set the disk store attribute `allow-force-compaction` to true. This causes Geode to maintain extra data about the files so it can compact on demand. This is disabled by default to save space. You can run manual online compaction at any time while the system is running. Oplogs eligible for compaction based on the `compaction-threshold` are compacted into the current oplog.
+    -   Run manual compaction as needed. Geode has two types of manual compaction:
+        -   Compact the logs for a single online disk store through the API, with the `forceCompaction` method. This method first rolls the oplogs and then compacts them. Example:
+
+            ``` pre
+            myCache.getDiskStore("myDiskStore").forceCompaction();
+            ```
+
+        -   Using `gfsh`, compact a disk store in a distributed system with the [compact disk-store](../../tools_modules/gfsh/command-pages/compact.html#topic_F113C95C076F424E9AA8AC4F1F6324CC) command. Examples:
+
+            ``` pre
+            gfsh>compact disk-store --name=Disk1
+
+            gfsh>compact disk-store --name=Disk1 --group=MemberGroup1,MemberGroup2
+            ```
+
+            **Note:**
+            You need to be connected to a JMX Manager in `gfsh` to run this command.
+
+## <a id="compacting_disk_stores__section_25BDB098E9584EAA9BC6582597544726" class="no-quick-link"></a>Run Offline Compaction
+
+Offline compaction is a manual process. All log files are compacted as much as possible, regardless of how much garbage they hold. Offline compaction creates new log files for the compacted log records.
+
+Using `gfsh`, compact individual offline disk stores with the [compact offline-disk-store](../../tools_modules/gfsh/command-pages/compact.html#topic_9CCFCB2FA2154E16BD775439C8ABC8FB) command:
+
+``` pre
+gfsh>compact offline-disk-store --name=Disk2 --disk-dirs=/Disks/Disk2
+
+gfsh>compact offline-disk-store --name=Disk2 --disk-dirs=/Disks/Disk2 
+--max-oplog-size=512 -J=-Xmx1024m
+```
+
+**Note:**
+Do not perform offline compaction on the baseline directory of an incremental backup.
+
+You must provide all of the directories in the disk store. If no oplog max size is specified, Geode uses the system default.
+
+Offline compaction can take a lot of memory. If you get a `java.lang.OutOfMemory` error while running this, you may need to increase your heap size with the `-J=-Xmx` parameter.
+
+## <a id="compacting_disk_stores__section_D2374039480947C5AE4CC64167E60978" class="no-quick-link"></a>Performance Benefits of Manual Compaction
+
+You can improve performance during busy times if you disable automatic compaction and run your own manual compaction during lighter system load or during downtimes. You could run the API call after your application performs a large set of data operations. You could run `compact disk-store` command every night when system use is very low.
+
+To follow a strategy like this, you need to set aside enough disk space to accommodate all non-compacted disk data. You might need to increase system monitoring to make sure you do not overrun your disk space. You may be able to run only offline compaction. If so, you can set `allow-force-compaction` to false and avoid storing the information required for manual online compaction.
+
+## <a id="compacting_disk_stores__section_A9EE86F662EE4D46A327C336E901A0F2" class="no-quick-link"></a>Directory Size Limits
+
+Reaching directory size limits during has different results depending on whether you are running an automatic or manual compaction:
+
+-   For automatic compaction, the system logs a warning, but does not stop.
+-   For manual compaction, the operation stops and returns a `DiskAccessException` to the calling process, reporting that the system has run out of disk space.
+
+## <a id="compacting_disk_stores__section_7A311038408440D49097B8FA4E2BCED9" class="no-quick-link"></a>Example Compaction Run
+
+In this example offline compaction run listing, the disk store compaction had nothing to do in the `*_3.*` files, so they were left alone. The `*_4.*` files had garbage records, so the oplog from them was compacted into the new `*_5.*` files.
+
+``` pre
+bash-2.05$ ls -ltra backupDirectory
+total 28
+-rw-rw-r--   1 user users          3 Apr  7 14:56 BACKUPds1_3.drf
+-rw-rw-r--   1 user users         25 Apr  7 14:56 BACKUPds1_3.crf
+drwxrwxr-x   3 user users       1024 Apr  7 15:02 ..
+-rw-rw-r--   1 user users       7085 Apr  7 15:06 BACKUPds1.if
+-rw-rw-r--   1 user users         18 Apr  7 15:07 BACKUPds1_4.drf
+-rw-rw-r--   1 user users       1070 Apr  7 15:07 BACKUPds1_4.crf
+drwxrwxr-x   2 user users        512 Apr  7 15:07 .
+
+bash-2.05$ gfsh
+
+gfsh>validate offline-disk-store --name=ds1 --disk-dirs=backupDirectory
+
+/root: entryCount=6
+/partitioned_region entryCount=1 bucketCount=10
+Disk store contains 12 compactable records.
+Total number of region entries in this disk store is: 7
+
+gfsh>compact offline-disk-store --name=ds1 --disk-dirs=backupDirectory
+Offline compaction removed 12 records.
+Total number of region entries in this disk store is: 7
+
+gfsh>exit
+
+bash-2.05$ ls -ltra backupDirectory
+total 16
+-rw-rw-r--   1 user users          3 Apr  7 14:56 BACKUPds1_3.drf
+-rw-rw-r--   1 user users         25 Apr  7 14:56 BACKUPds1_3.crf
+drwxrwxr-x   3 user users       1024 Apr  7 15:02 ..
+-rw-rw-r--   1 user users          0 Apr  7 15:08 BACKUPds1_5.drf
+-rw-rw-r--   1 user users        638 Apr  7 15:08 BACKUPds1_5.crf
+-rw-rw-r--   1 user users       2788 Apr  7 15:08 BACKUPds1.if
+drwxrwxr-x   2 user users        512 Apr  7 15:09 .
+bash-2.05$
+```

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/disk_storage/disk_free_space_monitoring.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/disk_storage/disk_free_space_monitoring.html.md.erb b/geode-docs/managing/disk_storage/disk_free_space_monitoring.html.md.erb
new file mode 100644
index 0000000..b8df31b
--- /dev/null
+++ b/geode-docs/managing/disk_storage/disk_free_space_monitoring.html.md.erb
@@ -0,0 +1,40 @@
+---
+title:  Configuring Disk Free Space Monitoring
+---
+
+To modify `disk-usage-warning-percentage` and `disk-usage-critical-percentage` thresholds, specify the parameters when executing the `gfsh create disk-store` command.
+
+``` pre
+gfsh>create disk-store --name=serverOverflow --dir=c:\overflow_data#20480 \
+--compaction-threshold=40 --auto-compact=false --allow-force-compaction=true \
+--max-oplog-size=512 --queue-size=10000 --time-interval=15 --write-buffer-size=65536 \
+--disk-usage-warning-percentage=80 --disk-usage-critical-percentage=98
+```
+
+By default, disk usage above 80% triggers a warning message. Disk usage above 99% generates an error and shuts down the member cache that accesses that disk store. To disable disk store monitoring, set the parameters to 0.
+
+To view the current threshold values set for an existing disk store, use the `gfsh                 describe` disk-store command:
+
+``` pre
+gfsh>describe disk-store --member=server1 --name=DiskStore1
+```
+
+You can also use the following `DiskStoreMXBean` method APIs to configure and obtain these thresholds programmatically.
+
+-   `getDiskUsageCriticalPercentage`
+-   `getDiskUsageWarningPercentage`
+-   `setDiskUsageCriticalPercentage`
+-   `setDiskUsageWarningPercentage`
+
+You can obtain statistics on disk space usage and the performance of disk space monitoring by accessing the following statistics:
+
+-   `diskSpace`
+-   `maximumSpace`
+-   `volumeSize`
+-   `volumeFreeSpace`
+-   `volumeFreeSpaceChecks`
+-   `volumeFreeSpaceTime`
+
+See [Disk Space Usage (DiskDirStatistics)](../../reference/statistics/statistics_list.html#section_6C2BECC63A83456190B029DEDB8F4BE3).
+
+

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/ccc2fbda/geode-docs/managing/disk_storage/disk_store_configuration_params.html.md.erb
----------------------------------------------------------------------
diff --git a/geode-docs/managing/disk_storage/disk_store_configuration_params.html.md.erb b/geode-docs/managing/disk_storage/disk_store_configuration_params.html.md.erb
new file mode 100644
index 0000000..53ad195
--- /dev/null
+++ b/geode-docs/managing/disk_storage/disk_store_configuration_params.html.md.erb
@@ -0,0 +1,106 @@
+---
+title:  Disk Store Configuration Parameters
+---
+
+You define your disk stores by using the `gfsh create disk-store` command or in `<disk-store>` subelements of your cache declaration in `cache.xml`. All disk stores are available for use by all of your regions and queues.
+
+These `<disk-store>` attributes and subelements have corresponding `gfsh create disk-store` command-line parameters as well as getter and setter methods in the `org.apache.geode.cache.DiskStoreFactory` and `org.apache.geode.cache.DiskStore` APIs.
+
+## <a id="disk_store_configuration_params__section_77273B9B5EA54227A2D25682BD77BAC3" class="no-quick-link"></a>Disk Store Configuration Attributes and Elements
+
+<table>
+<colgroup>
+<col width="33%" />
+<col width="33%" />
+<col width="34%" />
+</colgroup>
+<thead>
+<tr class="header">
+<th>disk-store attribute</th>
+<th>Description</th>
+<th>Default</th>
+</tr>
+</thead>
+<tbody>
+<tr class="odd">
+<td><code class="ph codeph">name</code></td>
+<td>String used to identify this disk store. All regions and queues select their disk store by specifying this name.</td>
+<td>DEFAULT</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">allow-force-compaction</code></td>
+<td>Boolean indicating whether to allow manual compaction through the API or command-line tools.</td>
+<td>false</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">auto-compact</code></td>
+<td>Boolean indicating whether to automatically compact a file when it reaches the <code class="ph codeph">compaction-threshold</code>.</td>
+<td>true</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">compaction-threshold</code></td>
+<td>Percentage of garbage allowed in the file before it is eligible for compaction. Garbage is created by entry destroys, entry updates, and region destroys and creates. Surpassing this percentage does not make compaction occur—it makes the file eligible to be compacted when a compaction is done.</td>
+<td>50</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">disk-usage-critical-percentage</code></td>
+<td>Disk usage above this threshold generates an error message and shuts down the member's cache. For example, if the threshold is set to 99%, then falling under 10 GB of free disk space on a 1 TB drive generates the error and shuts down the cache.
+<p>Set to &quot;0&quot; (zero) to disable.</p></td>
+<td>99</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">disk-usage-warning-percentage</code></td>
+<td>Disk usage above this threshold generates a warning message. For example, if the threshold is set to 90%, then on a 1 TB drive falling under 100 GB of free disk space generates the warning.
+<p>Set to &quot;0&quot; (zero) to disable.</p></td>
+<td>90</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">max-oplog-size</code></td>
+<td>The largest size, in megabytes, to allow an operation log to become before automatically rolling to a new file. This size is the combined sizes of the oplog files.</td>
+<td>1024</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">queue-size</code></td>
+<td>For asynchronous queueing. The maximum number of operations to allow into the write queue before automatically flushing the queue. Operations that would add entries to the queue block until the queue is flushed. A value of zero implies no size limit. Reaching this limit or the time-interval limit will cause the queue to flush.</td>
+<td>0</td>
+</tr>
+<tr class="odd">
+<td><code class="ph codeph">time-interval</code></td>
+<td>For asynchronous queueing. The number of milliseconds that can elapse before data is flushed to disk. Reaching this limit or the queue-size limit causes the queue to flush.</td>
+<td>1000</td>
+</tr>
+<tr class="even">
+<td><code class="ph codeph">write-buffer-size</code></td>
+<td>Size of the buffer, in bytes, used to write to disk.</td>
+<td>32768</td>
+</tr>
+</tbody>
+</table>
+
+| `disk-store` subelement | Description                                                                             | Default                |
+|-------------------------|-----------------------------------------------------------------------------------------|------------------------|
+| `<disk-dirs>`           | Defines the system directories where the disk store is written and their maximum sizes. | `.` with no size limit |
+
+## <a id="disk_store_configuration_params__section_366001C72D674AF69B2CED91BFA73A9B" class="no-quick-link"></a>disk-dirs Element
+
+The `<disk-dirs>` element defines the host system directories to use for the disk store. It contains one or more single `<disk-dir>` elements with the following contents:
+
+-   The directory specification, provided as the text of the `disk-dir` element.
+-   An optional `dir-size` attribute specifying the maximum amount of space, in megabytes, to use for the disk store in the directory. By default, there is no limit. The space used is calculated as the combined sizes of all oplog files.
+
+You can specify any number of `disk-dir` subelements to the `disk-dirs` element. The data is spread evenly among the active disk files in the directories, keeping within any limits you set.
+
+Example:
+
+``` pre
+<disk-dirs>
+    <disk-dir>/host1/users/gf/memberA_DStore</disk-dir>
+    <disk-dir>/host2/users/gf/memberA_DStore</disk-dir> 
+    <disk-dir dir-size="20480">/host3/users/gf/memberA_DStore</disk-dir> 
+</disk-dirs>
+```
+
+**Note:**
+The directories must exist when the disk store is created or the system throws an exception. Geode does not create directories.
+
+Use different disk-dir specifications for different disk stores. You cannot use the same directory for the same named disk store in two different members.



Mime
View raw message