This is a running list of todo documentation items. Feel free
to add to the list or take on an item as you wish (in the form
of a JIRA patch of course).
-------------------------------------------------------------

recipes.xml:110:    
[maybe an illustration would be nice for each recipe?]

recipes.xml:167:                     
"wait for each watch event". [how do you wait?]

recipes.xml:457:          
<remark>[tbd: myabe helpful to indicate which step this refers to?]</remark>

zookeeperAdmin.xml:77:      
because requires a majority <remark>[tbd: why?]</remark>, it is best to use...

zookeeperAdmin.xml:112:   
 <screen>$yinst -i jdk-1.6.0.00_3 -br test  <remark>[y! prop - replace with open equiv]</remark></screen>
 
zookeeperAdmin.xml:99:         
- use a maximum heap size of 3GB for a 4GB machine.  <remark>[tbd:  where would they do this? Environment variable, etc?]</remark>

zookeeperAdmin.xml:120
<screen>$ yinst install -nostart zookeeper_server <remark>[Y! prop - replace with open eq]</remark></screen>

zookeeperAdmin.xml:171:              
In Java, you can run the following command to execute simple operations:<remark> [tbd: also, maybe give some of those simple operations?]

zookeeperAdmin.xml:194:          
Running either program gives you a shell in which to execute simple file-system-like operations. <remark>[tbd: again, sample
          operations?]

zookeeperAdmin.xml:252:       
If servers use different configuration files,
care must be taken to ensure that the list of servers in all of the
standard form, with legal values, etc]</remark>

zookeeperAdmin.xml:408:
(Note: The system property has no zookeeper
prefix, and the configuration variable name is different from
the system property. Yes - it's not consistent, and it's
annoying.<remark> [tbd: is there any explanation for
this?]</remark>)
		
zookeeperAdmin.xml:445:               When the election algorithm is
                "0" a UDP port with the same port number as the port listed in
                the <emphasis role="bold">server.num</emphasis> option will be
                used. <remark>[tbd: should that be <emphasis
                role="bold">server.id</emphasis>? Also, why isn't server.id
                documented anywhere?]</remark>
		
zookeeperAdmin.xml:481:                The default to this option is yes, which
                means that a leader will accept client connections.
                <remark>[tbd: how do you specifiy which server is the
                leader?]</remark>
		
zookeeperAdmin.xml:495		When the server
                starts up, it determines which server it is by looking for the
                file <filename>myid</filename> in the data directory.<remark>
                [tdb: should we mention somewhere about creating this file,
                myid, in the setup procedure?]</remark>
		
zookeeperAdmin.xml:508:               [tbd: is the next sentence explanation an of what the
                election port or is it a description of a special case?]
                </remark>If you want to test multiple servers on a single
                machine, the individual choices of electionPort for each
                server can be defined in each server's config files using the
                line electionPort=xxxx to avoid clashes.
		
zookeeperAdmin.xml:524:               If followers fall too far behind a
                leader, they will be dropped. <remark>[tbd: is this a correct
                rewording: if followers fall beyond this limit, they are
                dropped?]</remark>
		
zookeeperAdmin.xml:551:               ZooKeeper will not require updates
                to be synced to the media. <remark>[tbd: useful because...,
                dangerous because...]</remark>
		
zookeeperAdmin.xml:580:                Skips ACL checks. <remark>[tbd: when? where?]</remark>
                
zookeeperAdmin.xml:649:        <remark>[tbd: Patrick, Ben, et al: I believe the Message Broker
        team does perform routine monitoring of Zookeeper. But I might be
        wrong. To your knowledge, is there any monitoring of a Zookeeper
        deployment that will a Zookeeper sys admin will want to do, outside of
        Yahoo?]</remark>
	
zookeeperAdmin.xml:755:            Also,
            the server lists in each Zookeeper server configuration file
            should be consistent with one another. <remark>[tbd: I'm assuming
            this last part is true. Is it?]</remark>
	    
zookeeperAdmin.xml:812:     For best results, take note of the following list of good
      Zookeeper practices. <remark>[tbd: I just threw this section in. Do we
      have list that is is different from the "things to avoid"? If not, I can
      easily remove this section.]</remark>
      

zookeeperOver.xml:162:      Ephemeral nodes are useful when you
      want to implement <remark>[tbd]</remark>.
      
zookeeperOver.xml:174:     And if the
      connection between the client and one of the Zoo Keeper servers is
      broken, the client will receive a local notification. These can be used
      to <remark>[tbd]</remark>

zookeeperOver.xml:215:            <para>For more information on these (guarantees), and how they can be used, see
      <remark>[tbd]</remark></para>
      
zookeeperOver.xml:294:           <para><xref linkend="fg_zkComponents" /> shows the high-level components
      of the ZooKeeper service. With the exception of the request processor,
      <remark>[tbd: where does the request processor live?]</remark> 
      
zookeeperOver.xml:298:      <para><xref linkend="fg_zkComponents" /> shows the high-level components
      of the ZooKeeper service. With the exception of the request processor,
     each of
      the servers that make up the ZooKeeper service replicates its own copy
      of each of components. <remark>[tbd: I changed the wording in this
      sentence from the white paper. Can someone please make sure it is still
      correct?]</remark>
      
zookeeperOver.xml:342:      The programming interface to ZooKeeper is deliberately simple.
      With it, however, you can implement higher order operations, such as
      synchronizations primitives, group membership, ownership, etc. Some
      distributed applications have used it to: <remark>[tbd: add uses from
      white paper and video presentation.]</remark> 
      

zookeeperProgrammers.xml:94:              <listitem>
        <para><xref linkend="ch_programStructureWithExample" />
        <remark>[tbd]</remark></para>
      </listitem>
      
zookeeperProgrammers.xml:115:     Also,
    the <ulink url="#ch_programStructureWithExample">Simple Programmming
    Example</ulink> <remark>[tbd]</remark> is helpful for understand the basic
    structure of a ZooKeeper client application.
    
zookeeperProgrammers.xml:142:      The following characters are not
				allowed  because <remark>[tbd:
				do we need reasons?]</remark> 

zookeeperProgrammers.xml:172:     If
      the version it supplies doesn't match the actual version of the data,
      the update will fail. (This behavior can be overridden. For more
      information see... )<remark>[tbd... reference here to the section
      describing the special version number -1]</remark>
      
zookeeperProgrammers.xml:197:        More information about watches can be
        found in the section 
	<ulink url="recipes.html#sc_recipes_Locks">
	Zookeeper Watches</ulink>.
        <remark>[tbd: fix this link] [tbd: Ben there is note from to emphasize
        that "it is queued". What is "it" and is what we have here
        sufficient?]</remark></para>
	
zookeeperProgrammers.xml:335:    it will send the session id as a part of the connection handshake.
    As a security measure, the server creates a password for the session id
    that any ZooKeeper server can validate. <remark>[tbd: note from Ben:
    "perhaps capability is a better word." need clarification on that.]
    </remark>
    
zookeeperProgrammers.xml:601:              <ulink
              url="recipes.html#sc_recipes_Locks">Locks</ulink>
              <remark>[tbd:...]</remark> in <ulink
              url="recipes.html">Zookeeper Recipes</ulink>.
              <remark>[tbd:..]</remark>).</para>
	      
zookeeperProgrammers.xml:766:             <para>See INSTALL for general information about running
              <emphasis role="bold">configure</emphasis>. <remark>[tbd: what
              is INSTALL? a directory? a file?]</remark></para>
	     
	      
	      
zookeeperProgrammers.xml:813:                <para>To verify that the node's been created:</para>

        <para>You should see a list of node who are children of the root node
        "/".</para><remark>[tbd: document all the cli commands (I think this is ben's comment)

zookeeperProgrammers.xml:838:                <para>Refer to <xref linkend="ch_programStructureWithExample"/>for examples of usage in Java and C.
        <remark>[tbd]</remark></para>

zookeeperProgrammers.xml 847: <remark>[tbd: This is a new section. The below
    is just placeholder. Eventually, a subsection on each of those operations, with a little
    bit of illustrative code for each op.] </remark>
    
zookeeperProgrammers.xml:915:    Program Structure, with Simple Example</title>

zookeeperProgrammers.xml:999:        <term>ZooKeeper Whitepaper <remark>[tbd: find url]</remark></term>

zookeeperProgrammers.xml:1008:        <term>API Reference <remark>[tbd: find url]</remark></term>

zookeeperProgrammers.xml:1062:        [tbd]</remark></term><listitem>
          <para>Any other good sources anyone can think of...</para>
        </listitem>

zookeeperStarted.xml:73:            <para>[tbd: should we start w/ a word here about were to get the source,
      exactly what to download, how to unpack it, and where to put it? Also,
      does the user need to be in sudo, or can they be under their regular
      login?]</para>
      
zookeeperStarted.xml:84:      <para>This should generate a JAR file called zookeeper.jar. To start
      Zookeeper, compile and run zookeeper.jar. <emphasis>[tbd, some more
      instruction here. Perhaps a command line? Are these two steps or
      one?]</emphasis></para>
      
zookeeperStarted.xml:139:      <para>ZooKeeper logs messages using log4j -- more detail available in
      the <ulink url="zookeeperProgrammers.html#Logging">Logging</ulink>
      section of the Programmer's Guide.<remark revision="include_tbd">[tbd:
      real reference needed]</remark> 
      
zookeeperStarted.xml:201:      The C bindings exist in two variants: single
      threaded and multi-threaded. These differ only in how the messaging loop
      is done. <remark>[tbd: what is the messaging loop? Do we talk about it
      anywyhere? is this too much info for a getting started guide?]</remark>
      
zookeeperStarted.xml:217:      The entry <emphasis
      role="bold">syncLimit</emphasis> limits how far out of date a server can
      be from a leader. [TBD: someone please verify that the previous is
      true.] 

zookeeperStarted.xml:232:	These are the "electionPort" numbers of the servers (as opposed to
      clientPorts), that is ports for <remark>[tbd: feedback need: what are
      these ports, exactly?]
      
zookeeperStarted.xml:258:          <remark>[tbd: what is the other config param?
          (I believe two are mentioned above.)]</remark>
