Return-Path: Delivered-To: apmail-hadoop-zookeeper-commits-archive@minotaur.apache.org Received: (qmail 59597 invoked from network); 19 Feb 2010 02:08:23 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 19 Feb 2010 02:08:23 -0000 Received: (qmail 5041 invoked by uid 500); 19 Feb 2010 02:08:23 -0000 Delivered-To: apmail-hadoop-zookeeper-commits-archive@hadoop.apache.org Received: (qmail 5000 invoked by uid 500); 19 Feb 2010 02:08:22 -0000 Mailing-List: contact zookeeper-commits-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: zookeeper-dev@ Delivered-To: mailing list zookeeper-commits@hadoop.apache.org Received: (qmail 4990 invoked by uid 99); 19 Feb 2010 02:08:22 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Feb 2010 02:08:22 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED,OBSCURED_EMAIL X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 19 Feb 2010 02:08:21 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 0AE2023888A2; Fri, 19 Feb 2010 02:08:01 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r911674 - in /hadoop/zookeeper/trunk: CHANGES.txt docs/zookeeperObservers.html docs/zookeeperObservers.pdf src/docs/src/documentation/content/xdocs/zookeeperObservers.xml Date: Fri, 19 Feb 2010 02:08:00 -0000 To: zookeeper-commits@hadoop.apache.org From: mahadev@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20100219020801.0AE2023888A2@eris.apache.org> Author: mahadev Date: Fri Feb 19 02:08:00 2010 New Revision: 911674 URL: http://svn.apache.org/viewvc?rev=911674&view=rev Log: ZOOKEEPER-673. Fix observer documentation regarding leader election (flavio via mahadev) Modified: hadoop/zookeeper/trunk/CHANGES.txt hadoop/zookeeper/trunk/docs/zookeeperObservers.html hadoop/zookeeper/trunk/docs/zookeeperObservers.pdf hadoop/zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperObservers.xml Modified: hadoop/zookeeper/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/zookeeper/trunk/CHANGES.txt?rev=911674&r1=911673&r2=911674&view=diff ============================================================================== --- hadoop/zookeeper/trunk/CHANGES.txt (original) +++ hadoop/zookeeper/trunk/CHANGES.txt Fri Feb 19 02:08:00 2010 @@ -218,6 +218,9 @@ ZOOKEEPER-589. When create a znode, a NULL ACL parameter cannot be accepted. (breed via mahadev) + ZOOKEEPER-673. Fix observer documentation regarding leader election (flavio + via mahadev) + IMPROVEMENTS: ZOOKEEPER-473. cleanup junit tests to eliminate false positives due to "socket reuse" and failure to close client (phunt via mahadev) Modified: hadoop/zookeeper/trunk/docs/zookeeperObservers.html URL: http://svn.apache.org/viewvc/hadoop/zookeeper/trunk/docs/zookeeperObservers.html?rev=911674&r1=911673&r2=911674&view=diff ============================================================================== --- hadoop/zookeeper/trunk/docs/zookeeperObservers.html (original) +++ hadoop/zookeeper/trunk/docs/zookeeperObservers.html Fri Feb 19 02:08:00 2010 @@ -227,18 +227,6 @@

- - - Please note: the Observers feature currently only works with the basic - leader election protocol, not fast leader election or authenticated fast - leader election. This will be remedied when a bug in the leader election - protocol code is fixed in the near future. An exception will be thrown - if you try to start a cluster containing Observers without - electionAlg=0. See below for more details. - - -

-

Although ZooKeeper performs very well by having clients connect directly to voting members of the ensemble, this architecture makes it hard to scale out to huge numbers of clients. The problem is that as we add more @@ -272,32 +260,9 @@

- +

How to use Observers

-

- - - Note that - until ZOOKEEPER-578 - is resolved, you must set electionAlg=0 in every server configuration - file. Otherwise an exception will be thrown when you try to start your - ensemble. - - -

-

- - - The reason: because Observers do not participate in leader elections, - they rely on voting Followers to inform them of changes to the - Leader. Currently, only the basic leader election algorithm starts a - thread that responds to requests from Observers to identify the current - Leader. Work is in progress on other JIRAs to bring this functionality - to all leader election protocols. - - -

Setting up a ZooKeeper ensemble that uses Observers is very simple, and requires just two changes to your config files. Firstly, in the config file of every node that is to be an Observer, you must place this line: @@ -330,7 +295,7 @@

- +

Example use cases

Modified: hadoop/zookeeper/trunk/docs/zookeeperObservers.pdf URL: http://svn.apache.org/viewvc/hadoop/zookeeper/trunk/docs/zookeeperObservers.pdf?rev=911674&r1=911673&r2=911674&view=diff ============================================================================== --- hadoop/zookeeper/trunk/docs/zookeeperObservers.pdf (original) +++ hadoop/zookeeper/trunk/docs/zookeeperObservers.pdf Fri Feb 19 02:08:00 2010 @@ -58,10 +58,10 @@ >> endobj 14 0 obj -<< /Length 2546 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 2340 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -GatU59on'f'#"%Ccn,PXUZbos"+.6S44tm8^$u(,ZJG[fU:Q2Da:9LjHiEu0>$k8BfcKTk/jm$7Z6!AdH6hB1m!a>K3e$.9c9o/6SE%n=4S\N=]a)lH.!5DAE?8lXhr">!&'fS7pWpU(IqZ?@ijsEC4StMP9$$&`i%LpUj8@-oo&u9N:TA2s#JYAl,p.Q`U?,&>"4sBt23U$_r/^I=lgF/XmVeJ(5LZ6K_^r^Hc'$#%Y+OL)C$Z%ak0@E0YMG[3_Skts+[R)Qi4DiI"S\VLX?kl=eT)@.HfBe?>lK4R*I:R-p9n`3^M0*RN@fi9<8J9mA9p`7[9YeEGNrSS[(*>Q^'4.Yr1%Z`4P;2\Be$`::AIAuhWu?3Kil?8J=Z57fSRpi(e^*lD;V*%;k<[!^J.O?!!`"!#IQ=Y\JlQ+`8@+$N.KLG%K[A)K/5,Z3#-g$n"<'$"hk To>8S[..LoKq1QH^Z,;i*[TXDON_:^V=7Q`NlhScL#T;,oOoc)e;NW-`/H8r+(hSW:pEC6d<5*6LNn'JsYG1f/\U4"rqJ'7+M-1C6?-47XnGA\1cgKCo#OS\8VED\!T!8=Sj/OT6-DJUBiCJ(tAK7a^R+:,V_@="E"B%*/[F)L,b?elZ&fU#EKbb#hbP>a;>'0(B-AkLSWD=De]VpP[W)h7le0F5kHRN4Lip?gUlDnVDWO5[>eFqM1+%S1ZO*^m.UG]eX#;@bVSRJ<;G/CIh-??BS.^,XlC]iAp3B9*sf\!QB>0H'tJ9rb<_'6^Z@7e$d.L[5N^C89%,oT;Xf)r=iX)+Y47_Ob)GuM0Lc7_Bq^LCT^09&,b:XM"(q^=kjYPSoDHLL9!t*VT=U%MRPpX(R0UOmP?^Q0dCckRVG`R0D\im&73G$U<[Lcj%J7JFO$o.r'/GA-_YLjN4G;KIVaArCP4eY9hD0r>dq"E,_/#7*V'_XB7Xk7JVp(gGH]>gcsU9I^[[RbNe(bmG%\,A$'Q=Te^Vhdkt.l9TST7eJ8Hb3OH\K<4l`j;sY^DJ[,0rlA?i3TU>.rJ:#1:\$TK!dR6U"FFGK)]Ojs/c]69_cJGI&>?MF/%*gkmOf9P4c6`/"Fe#=[/<2kVaAtV<`F>9TbH V8T:MOF"E#&fcroT#TsNGZim@A2j[nQYDAK.q`VDJeB`)$USU!Cl05*t-]mp(:gUA9]rcoT`ff2+./dgTK*!gs<.%=3?l%%D^NgK&AT5ldDG5>ud(oJa]A4o[;pA?EP_b$J`V)WYa'<"fj;L[G8>m.#*fpCF4=5^1AP;=YH^A`_n[=G-^+7iI2]80dp4-*JC;$Nr]ffQrQ&?OP>t*V-0J72W.iD4@4p4_;cSG94tBc<_V]6?WA-)gLb(m?h^t-P4N=GQ=nr.IF!G`)(8l&;`_HjbkQcHeNDEJsT-f+Xhg:n5hufSWr=%*aAi]:E]pt>C?]Q/DG[V@KYhdXRES(e<\=K!W%+)Y8Dl=);d6S\i87)6SG5"SpA._5f%pf.0cHfZ6:Y0/KZQ>"M60p8,!!IR]NJTeT?CtA\gE0GK?:ONA4F*hc=g7^NG5Q1'[@qR\]0U9t(`mn;m_:)8kh?~> +Gatm=D3(2F&H9DYJo=AZ$fN-"Ujbk/?IBXhBlBh=D>M'VB%K2]>6D@FJ)=[cAHlskNN,N@%+q.sk4(5`hRC,Alatei"5C)(q8TZL)qT,gO)&SQGSUIsmJ;sQ/$2$C\FrS]Po"Vi?i7L=\U*>:^7CkOVlUH[@=%EuPWs5Ricl.m3qoTtf$R4(L-aCA$WKNTpLs\%Rk%M:MJsf[tHs?(Zr*H%a9Vk5b9\Qi\9e4m!7j!QlH`T!9m5=A9X[20$^H8k/oNB^ZHs+$&DF<.rg`JdN[,#/_:J-5Z,r36ThD8[XX)X6Ko*kFs8drr]U$LGs(,psJS13i$R.aTR.!b*jd@m0Z(h>e,:cI[Y@L+IN-8gss5PQED_n\pi]1EJfd2ok_-)FAn-2\)gP[O]i$`nWMaJe2!FHG8kif%_+q1Yq\)8_r>"heRo1[Ikd+qQ65+ri:FrX`B.%.Ilca<[Pr/BQ[3cR;L)E$r7L63qmZ:-XeCjOVapaJ-RGe*tH@UUJask>mM*P=Ul>@LiEtP9R+MR]n5ntHJ$=lgP\BT:V&r3LjgYN=6=$,3q63oUF1k:"nk"c"]rD[f6\'i;N?eOm5 J1:6SGoU03#3!_C^,>cD(nDPouFa8hqfUTA-9NZ$@Lo+>`FT5$-Sg1H=bHB=P(N9O6U(@k!XTn&aU?M&Mb&\J1`./5`E:qA,W=iDV5n+[i<-e-A;h$EVX5+pfBYWXXCMQ9Ek`,`8oDJMC8TXj,OOS3B;aX75(0*hflI#@=UQLiP%6]HNHmR+@',;2:Q<,rZd&]:AW_E4B^h^HN\\NU>Qoei?MOTMB=buq%O/BQEE2%bu/WmD$:*skNeAj'E5g\2DY9^?p['k.;T<]oT^B3u)u*`HgZC*jW4C[a?K_4:n@k*1>,FR6T'-DX(r8#!\qX\"@RG)`#tYAMp64\8q$*BS8RhFA*=m=W=d-"8u.>&tQahCAA^B8=2[hC?+ACI@F^N,(j8fhRm2pUm3o5e&7F5D.-CM(0\D;emE%_+H@1q`_m8hrVi%h^uRQ!.sK,kJa..*W8`!&IG^],bAP)qugl^"[XUR"XuG!KW5u3g5M9G/Z%VXVh!.+"H'N>G_'uTbPrE9)_FUCB?)5fJ-.ij"QNFs;IU6H!jW?O`PdHC08Q1GEpVHOA$>bgL*r:`%[QqPn*dBMl5g5nG+uRW[DRYOI;?A'A\.1rh*aK9j((-&-dL91l,:?'?b]1s[rku')b.DSbK`K94YI/uonFo)[$@1.P]%!Y@cTZWU1HedcF?o+*XUeLElR$"tU*&Rr6hd_KrPoj0$)jVI7C2?1NS.Jc9^m)D<5n/L$H7^2ZT;?h'pgInh:b.>.Vgr-o!]>'r\E7YU]o5kD5EI,Wm=ad]6.&$NOWh/5TC!nL2iYZ)B6b?3gDb6;8^RRi?4YQU9Qoln("*1.T`jQtE(<"XE]re.dK4&TWa>7AnmMF%fBr;@8&9Gnc_CjjD(iac6D[?79M/P\XPf1JJ+'JVjdre.kff_(pM@M9L6M*XE)a`8:67WAX"1MY&SNK%aEB%9$Lm&=&cX,g1,L:@mBf*1jrSYp,c4q8TbIfhGj_4\T::=/Gq6@n.e,!O^+'eNBd?sYSX?C"d0.]+NZ2~> endstream endobj 15 0 obj @@ -70,120 +70,88 @@ /MediaBox [ 0 0 612 792 ] /Resources 3 0 R /Contents 14 0 R -/Annots 16 0 R >> endobj 16 0 obj -[ -17 0 R -] -endobj -17 0 obj -<< /Type /Annot -/Subtype /Link -/Rect [ 162.348 223.332 253.008 211.332 ] -/C [ 0 0 0 ] -/Border [ 0 0 0 ] -/A << /URI (https://issues.apache.org/jira/browse/ZOOKEEPER-578) -/S /URI >> -/H /I ->> -endobj -18 0 obj -<< /Length 2247 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 1812 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -Gatm=gN)%,&:N/3n?'fkNUT]c1OVeLELP)C&o4AngB0i1&o%\K#h"V,oj(I[\1<-9dq1^^"Hg4\fs>=8iE*A-S(Zlo,k.,hn*OZN1Z(jS'Rn(oqtW8[6^G\t-+s'7QcZ;]jMc!$"X-!s/LGp*c%hq,gJ:OAQMRjF>C1i^q^?\<.e_Z0%_K-?rG&A0@3dH$XG>,kat,&Od8P[hRX-9[@JKiXVjHVlg'jV:Q./J!BSABM1qKW^d9Oe>kFU"b)@!4JAJbe$](s[c^V&7s'+j/Z`6(\"\0[Q$#.mSfi9Z>]5k:67:1B0W;qQ7TOd(^Di(hY.)CWQTo'\_iZ;^eWa9ttujp-).0bYL?nAO2Q7mJe&Oj*B2')h7YIXg]+(,gQ^h#cB5qM,$aX^o':*_H'g&b\)4LLPHGkCpt#6S)4"^U*PR/k(c)2ZSV37ks?ikck.\U?%`cEZi"0;,!+Qe?s,M4`tMno0IQou_"%R-0&iT7/eE`'-us51oNbL(KVfFkWT@Foh4>bZ_i*&6Qu7oofP'&4m6E4%I0^'TES\;ApH:ZZejAh9"6r'"Q]$"H^Cj-`+(KK7$tnCdjXjk2X"02AHO@q*MB:j46Jl!`8JZWRKlb!6lV!t0a=OqL[$f5VrT-iUP1,\\W4<]mdE_T\WD22DF81#^`a1iI))FP&Cr+YIPfdk@g[T'Y[.tJi6u(HE(iRek]5d6D_%h"2)J;^2907@2+j8g3VEkGa6T1k7c^'-SXV`7ij:Xl]-8je?-/MYE'Uf!C;)$$6tG/A$FrSalT$:J/0#=3#*_iYe<"[en\_Y9kmMVY;\lF.N05[Q,KY>4:n?sNB#\E3fQl9jr]O_nm3=#Oe0rF#_KB#p&^cdBKt3+SBSd;n@9_bi[KXCda(nUoZ&D;7&^=f7PpSB:dtT*4%,>;0_-SN=FD]hE8(60(fY1QYAmt=,,jgH^8SoEcCXNJsG?%JC!X)7$ZB.LnWaSFFieF_DKUs71Tt?"Cg2Ia[&DOY7snP3iKDsXU>?6.mg--!%%E:mRNso/b%iCVM\D>%>Jia=KEfaeO>,Xg$!QF('usiuOoob(11j!rX.R.=-ZB6&qaKN0"N+@7dF)LUoZ:PfR.60;T(inVH%-F516U')-UWR)?0%b%lT%RB6pgUhV`d^.)^LB??PiFlmU&R)9=S6G-.4W]9M4XPiJ*m;!J[6TGS@%sVs8PVh?_MDJCeWq]@P,K)K?h6H%\h& ^C&SQ`"T&)#7N5Xm+AKngeh4!X.`XRH5QIjaqCXM",9=r2M-cY)]Xg)C1)8*,oh&I0/\e9Bb^!lR9oPt_>Ka0H_:k8;20.Hdk@@_"E8A'KLFK"3nn`=C79DS_HB495Smu'R/*]Q*L`[oI44b)nuJ(uYC-U'BQm@@T"-g7a95ltMW-=.b2nb_g)D)T!512l?eXS"Db4a`JRRWVa;&Gb1(Ua47gY8I-k^Y2:!8P?L*i\l~> +Gat%$?'Ca9'Rf_Zi2u6;<^AJ_p:_h7fsK!tdl)Yhg-3S#K4[Cn'!1-mqHaRg=17UqZfAFski87]cI#)L2N.=!`Rb8&$M]!NX@!U)8Wpmh..2TB;&5:9'c7O!(V_W[D&.%2j+&np[Fm.KA%*$KBJ=Of)+h[nf[R`EYF]keaH+.X4-&rJ;bB-Zn8DW5;kkq`eB##NaeCT(Q!-nK&%\5K8r+I0f@01nqlfT2Fl6rg:Ko?nZS;Ar0Isa+7I-"$2#Y>l"IiaNE*087FM]3%3nk!oT_MOUB7e7pEZfZSZIZc/M6:oXn^Cc@qOcLM,Q*[>P=rm>@Cl$.X%MiOAT.'d4Ke,+f2HI3n3Xu)_G62[:+<0"qshKI#=FYBBc%'u8a/!ArHATMK"r):r67Gi"=%^HMF8iCZ8IJEd]NZj%\u7iMR&i98Os/GLK/2fHLpUS6R@TV!DL@?3-T"1N#*t7nZ(*I]k;FU`t5I+S@IT9-4q3WhNptA/k>Jh_pLjOXQ$XO7)\1V)jD)feQ^7/]pfo4ReE+F[Lnq_8LuWRQm89!2rSbn#Wi2R#^P^CP83eG5HtDD0XsHU=b5VPnu-=Or(8I2A7K`;@.BK$]e&q!Zj?gLoAKkdaik3T6o#$+l(D_$CU_WY9-g3:OaQ0g'XU5nZUDe(@!!\XUh8D&_`_m/1ZYcrRP&YLt32p=s$BqG3WbQS6,.<'NKH&;+A2?NMa>DmHIM.t&d$E\AfoPmL?0m[`C;RTCF5_4S]@;6$;1r,H=\'h]"m9U'_fbQZb2#1CIl"gh`EXd/&G(K3$/":?E.*2=m,838Q5tel.4EDaXb0YRLF8#N5g#5tVG\D#?RCcI"K$Vr`4'pT56Q&7fPG9tgK(,A:;RiehbgB\fN-!-][fuk)b5OT#(n'G\:eNi=.-IUmla0$eB^u%%)GqOQTP?=tAN76?K]MHe+IiUoTu[DL*KX8]L3-.`LR&'."BiokE:XC.'M*].:rW>lBg?Sb*1de.QpbO?:.kh2E"k\Vj?l^_8(@9CQ"b84j'4<"f]![Iq)^Z]T4Z4Q_Zr2oFLh"E\rs!PRqcpP4FQ5A2^3fE@nZc;Z"'U&u-&f2oA`rZt4)?U)!R9*GBo+8>J^D]0!(bKo4mRHDm4dq>'?RA<:c0_rq[6TG[?ui`n8of]?5)dQW;XIbf.iamBo.*"BLVAS1P6pls'pf.5NL"hF:79`qk8/J^T'lOW<*aL!P>I1=KGic)u_pdI1<`QA-,]3mpS:iPY7.I;ZY`!rUO:/eGn'BYAhSQ`g%c#E_%VBh/ApR/6M;h2?FhSblI%UGhW5=;#@TU[JR4"*NhNi:?>"%&CbRdpn;\tgS2,9!gf)W\GlPdXR<@~> endstream endobj -19 0 obj -<< /Type /Page -/Parent 1 0 R -/MediaBox [ 0 0 612 792 ] -/Resources 3 0 R -/Contents 18 0 R ->> -endobj -20 0 obj -<< /Length 456 /Filter [ /ASCII85Decode /FlateDecode ] - >> -stream -Gar&:bAMqd&A7ljHq^BVZ&KiECoX@1HYBI#lJl7b#ET4g2DiS6f0COl&Mi'C4?MoR3X60Up]1M`r]Gc@,7K8;rlt4?0,&mRZl0_<%BOWTg2KT]s,c[MSk.Ku";75b9J2FB%-@fi\`g-ZN)P_JJP/$5>GsI0087mK=52)A>"@ThmLABgZDDH04qruGkGtWmKrMQ*qf?1#/l6^9''4LhY;HTQkl:2OM=DYF$+fr2536b?9FD-@Y$RO3PVgI54?hX+//mLKhZXip~> -endstream -endobj -21 0 obj +17 0 obj << /Type /Page /Parent 1 0 R /MediaBox [ 0 0 612 792 ] /Resources 3 0 R -/Contents 20 0 R +/Contents 16 0 R >> endobj -23 0 obj +19 0 obj << /Title (\376\377\0\61\0\40\0\117\0\142\0\163\0\145\0\162\0\166\0\145\0\162\0\163\0\72\0\40\0\123\0\143\0\141\0\154\0\151\0\156\0\147\0\40\0\132\0\157\0\157\0\113\0\145\0\145\0\160\0\145\0\162\0\40\0\127\0\151\0\164\0\150\0\157\0\165\0\164\0\40\0\110\0\165\0\162\0\164\0\151\0\156\0\147\0\40\0\127\0\162\0\151\0\164\0\145\0\40\0\120\0\145\0\162\0\146\0\157\0\162\0\155\0\141\0\156\0\143\0\145) - /Parent 22 0 R - /Next 24 0 R + /Parent 18 0 R + /Next 20 0 R /A 9 0 R >> endobj -24 0 obj +20 0 obj << /Title (\376\377\0\62\0\40\0\110\0\157\0\167\0\40\0\164\0\157\0\40\0\165\0\163\0\145\0\40\0\117\0\142\0\163\0\145\0\162\0\166\0\145\0\162\0\163) - /Parent 22 0 R - /Prev 23 0 R - /Next 25 0 R + /Parent 18 0 R + /Prev 19 0 R + /Next 21 0 R /A 11 0 R >> endobj -25 0 obj +21 0 obj << /Title (\376\377\0\63\0\40\0\105\0\170\0\141\0\155\0\160\0\154\0\145\0\40\0\165\0\163\0\145\0\40\0\143\0\141\0\163\0\145\0\163) - /Parent 22 0 R - /Prev 24 0 R + /Parent 18 0 R + /Prev 20 0 R /A 13 0 R >> endobj -26 0 obj +22 0 obj << /Type /Font /Subtype /Type1 /Name /F3 /BaseFont /Helvetica-Bold /Encoding /WinAnsiEncoding >> endobj -27 0 obj +23 0 obj << /Type /Font /Subtype /Type1 /Name /F5 /BaseFont /Times-Roman /Encoding /WinAnsiEncoding >> endobj -28 0 obj +24 0 obj << /Type /Font /Subtype /Type1 /Name /F6 /BaseFont /Times-Italic /Encoding /WinAnsiEncoding >> endobj -29 0 obj +25 0 obj << /Type /Font /Subtype /Type1 /Name /F1 /BaseFont /Helvetica /Encoding /WinAnsiEncoding >> endobj -30 0 obj +26 0 obj << /Type /Font /Subtype /Type1 /Name /F9 /BaseFont /Courier /Encoding /WinAnsiEncoding >> endobj -31 0 obj +27 0 obj << /Type /Font /Subtype /Type1 /Name /F2 /BaseFont /Helvetica-Oblique /Encoding /WinAnsiEncoding >> endobj -32 0 obj +28 0 obj << /Type /Font /Subtype /Type1 /Name /F7 @@ -192,19 +160,19 @@ endobj 1 0 obj << /Type /Pages -/Count 4 -/Kids [6 0 R 15 0 R 19 0 R 21 0 R ] >> +/Count 3 +/Kids [6 0 R 15 0 R 17 0 R ] >> endobj 2 0 obj << /Type /Catalog /Pages 1 0 R - /Outlines 22 0 R + /Outlines 18 0 R /PageMode /UseOutlines >> endobj 3 0 obj << -/Font << /F3 26 0 R /F5 27 0 R /F1 29 0 R /F6 28 0 R /F9 30 0 R /F2 31 0 R /F7 32 0 R >> +/Font << /F3 22 0 R /F5 23 0 R /F1 25 0 R /F6 24 0 R /F9 26 0 R /F2 27 0 R /F7 28 0 R >> /ProcSet [ /PDF /ImageC /Text ] >> endobj 9 0 obj @@ -216,61 +184,57 @@ 11 0 obj << /S /GoTo -/D [15 0 R /XYZ 85.0 252.666 null] +/D [15 0 R /XYZ 85.0 326.666 null] >> endobj 13 0 obj << /S /GoTo -/D [19 0 R /XYZ 85.0 336.26 null] +/D [17 0 R /XYZ 85.0 534.22 null] >> endobj -22 0 obj +18 0 obj << - /First 23 0 R - /Last 25 0 R + /First 19 0 R + /Last 21 0 R >> endobj xref -0 33 +0 29 0000000000 65535 f -0000008992 00000 n -0000009071 00000 n -0000009163 00000 n +0000007448 00000 n +0000007520 00000 n +0000007612 00000 n 0000000015 00000 n 0000000071 00000 n 0000000683 00000 n 0000000803 00000 n 0000000842 00000 n -0000009308 00000 n +0000007757 00000 n 0000000976 00000 n -0000009371 00000 n +0000007820 00000 n 0000001113 00000 n -0000009437 00000 n +0000007886 00000 n 0000001250 00000 n -0000003889 00000 n -0000004012 00000 n -0000004039 00000 n -0000004244 00000 n -0000006584 00000 n -0000006692 00000 n -0000007240 00000 n -0000009502 00000 n -0000007348 00000 n -0000007804 00000 n -0000008027 00000 n -0000008219 00000 n -0000008332 00000 n -0000008442 00000 n -0000008553 00000 n -0000008661 00000 n -0000008767 00000 n -0000008883 00000 n +0000003683 00000 n +0000003791 00000 n +0000005696 00000 n +0000007951 00000 n +0000005804 00000 n +0000006260 00000 n +0000006483 00000 n +0000006675 00000 n +0000006788 00000 n +0000006898 00000 n +0000007009 00000 n +0000007117 00000 n +0000007223 00000 n +0000007339 00000 n trailer << -/Size 33 +/Size 29 /Root 2 0 R /Info 4 0 R >> startxref -9553 +8002 %%EOF Modified: hadoop/zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperObservers.xml URL: http://svn.apache.org/viewvc/hadoop/zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperObservers.xml?rev=911674&r1=911673&r2=911674&view=diff ============================================================================== --- hadoop/zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperObservers.xml (original) +++ hadoop/zookeeper/trunk/src/docs/src/documentation/content/xdocs/zookeeperObservers.xml Fri Feb 19 02:08:00 2010 @@ -44,16 +44,6 @@ Observers: Scaling ZooKeeper Without Hurting Write Performance - - Please note: the Observers feature currently only works with the basic - leader election protocol, not fast leader election or authenticated fast - leader election. This will be remedied when a bug in the leader election - protocol code is fixed in the near future. An exception will be thrown - if you try to start a cluster containing Observers without - electionAlg=0. See below for more details. - - - Although ZooKeeper performs very well by having clients connect directly to voting members of the ensemble, this architecture makes it hard to scale out to huge numbers of clients. The problem is that as we add more @@ -88,25 +78,6 @@

How to use Observers - - - Note that - until ZOOKEEPER-578 - is resolved, you must set electionAlg=0 in every server configuration - file. Otherwise an exception will be thrown when you try to start your - ensemble. - - - - - The reason: because Observers do not participate in leader elections, - they rely on voting Followers to inform them of changes to the - Leader. Currently, only the basic leader election algorithm starts a - thread that responds to requests from Observers to identify the current - Leader. Work is in progress on other JIRAs to bring this functionality - to all leader election protocols. - - Setting up a ZooKeeper ensemble that uses Observers is very simple, and requires just two changes to your config files. Firstly, in the config file of every node that is to be an Observer, you must place this line: