diff --git a/doc/user/databases.xml b/doc/user/databases.xml
index 788243afeed7adaa0a1fc843b04b0eaf4f85314c..2849948c68297348fbb28a8c760d5b4343a40bea 100644
--- a/doc/user/databases.xml
+++ b/doc/user/databases.xml
@@ -826,7 +826,7 @@ tarantool> <userinput>box.space.tester:delete('a')</userinput>
 
     <varlistentry>
         <term>
-            <emphasis role="lua">box.space.<replaceable>space-name</replaceable>.field_count</emphasis>
+            <emphasis role="lua" xml:id="box.space.field_count">box.space.<replaceable>space-name</replaceable>.field_count</emphasis>
         </term>
         <listitem>
             <para>
@@ -1179,7 +1179,7 @@ console.delimiter('')!</programlisting>
         </term>
         <listitem>
             <para>
-             _user is a new system tuple set for support of the authorization feature.
+             _user is a new system tuple set for support of the <link linkend="authentication">authorization feature</link>.
             </para>
         </listitem>
     </varlistentry>
@@ -1201,7 +1201,7 @@ console.delimiter('')!</programlisting>
         </term>
         <listitem>
             <para>
-             _cluster is a new system tuple set for support of the replication feature.
+             _cluster is a new system tuple set for support of the <olink targetptr="replication">replication feature</olink>.
             </para>
         </listitem>
     </varlistentry>
@@ -1499,7 +1499,7 @@ The result will be a table of tuples and will look like this:
 
     <varlistentry>
         <term>
-         <emphasis role="lua">box.space.<replaceable>space-name</replaceable>.index.<replaceable>index-name</replaceable>:min([<replaceable>key</replaceable>])</emphasis>
+         <emphasis role="lua">box.space.<replaceable>space-name</replaceable>.index.<replaceable>index-name</replaceable>:min([<replaceable>key-value</replaceable>])</emphasis>
         </term>
         <listitem>
             <para>
@@ -1507,6 +1507,7 @@ The result will be a table of tuples and will look like this:
             </para>
             <para>
               Returns: (type = tuple) the tuple for the first key in the index.
+              If optional <code>key-value</code> is supplied, returns the first key which is greater than or equal to key-value.
             </para>
             <para>
               Complexity Factors: Index size, Index type.
@@ -1527,7 +1528,7 @@ The result will be a table of tuples and will look like this:
 
     <varlistentry>
         <term>
-         <emphasis role="lua">box.space.<replaceable>space-name</replaceable>.index.<replaceable>index-name</replaceable>:max([<replaceable>key</replaceable>])</emphasis>
+         <emphasis role="lua">box.space.<replaceable>space-name</replaceable>.index.<replaceable>index-name</replaceable>:max([<replaceable>key-value</replaceable>])</emphasis>
         </term>
         <listitem>
             <para>
@@ -1535,6 +1536,7 @@ The result will be a table of tuples and will look like this:
             </para>
             <para>
               Returns: (type = tuple) the tuple for the last key in the index.
+              If optional <code>key-value</code> is supplied, returns the last key which is less than or equal to key-value.
             </para>
             <para>
               Complexity Factors: Index size, Index type.
@@ -2016,7 +2018,8 @@ tarantool&gt; <userinput>t:transform(2,2,'x')</userinput>
               then the result is returned.
             </para>
             <para>
-              Parameters: <code>start-field-number</code> = base 1, may be negative, <code>end-field-number</code> = optional, base 1, negative treated as positive.
+              Parameters: <code>start-field-number</code> = base 1, may be negative, <code>end-field-number</code> = optional, base 1, may be negative.
+              Negative values are counted from the end, for example -2 means the second-last field.
             </para>
             <para>
               Returns: (type = scalar) one or more field values.
@@ -3221,32 +3224,31 @@ box.space.payroll:select{'Jones'}</programlisting>
 <title>Limitations</title>
 
 <variablelist>
-
+ 
   <varlistentry>
     <term xml:id="limitations-index-field-count" xreflabel="limitations-index-field-count">Number of fields in an index</term>
     <listitem><para>For BITSET indexes, the maximum is 1.
-    For TREE indexes, the theoretical maximum is about 4 billion (BOX_FIELD_MAX)
-    but the practical maximum is the number of fields in a tuple.
+    For TREE or HASH indexes, the maximum is 255 (box.schema.INDEX_PART_MAX).
     </para></listitem>
   </varlistentry>
-  
+
   <varlistentry>
     <term xml:id="limitations-index-count" xreflabel="limitations-index-count">Number of indexes in a space</term>
-    <listitem><para>10 (BOX_INDEX_MAX).
+    <listitem><para>10 (box.schema.INDEX_MAX).
     </para></listitem>
   </varlistentry>
 
   <varlistentry>
     <term xml:id="limitations-tuple-field-count" xreflabel="limitations-tuple-field-count">Number of fields in a tuple</term>
-    <listitem><para>There is no theoretical maximum.
-    The practical maximum is whatever is specified by the space's <code>field_count</code> member,
+    <listitem><para>The theoretical maximum is 2147483647 (box.schema.FIELD_MAX).
+    The practical maximum is whatever is specified by the space's <link linkend="box.space.field_count">field_count</link> member,
     or the maximum tuple length.
     </para></listitem>
   </varlistentry>
-  
+
   <varlistentry>
     <term xml:id="limitations-space-count" xreflabel="limitations-space-count">Number of spaces</term>
-    <listitem><para>65535.
+    <listitem><para>The theoretical maximum is 2147483647 (box.schema.SPACE_MAX).
     </para></listitem>
   </varlistentry>
 
@@ -3278,7 +3280,7 @@ box.space.payroll:select{'Jones'}</programlisting>
   
   <varlistentry>
     <term xml:id="limitations-name-length" xreflabel="limitations-name-length">Length of an index name or space name or user name</term>
-    <listitem><para>32.
+    <listitem><para>32 (box.schema.NAME_MAX).
     </para></listitem>
   </varlistentry>
 
diff --git a/doc/user/plugins.xml b/doc/user/plugins.xml
index a9b27010390bd27eee402d5510a3e1d85c68081e..029edf6a38aa0fa88007981aa022b632bff083b8 100644
--- a/doc/user/plugins.xml
+++ b/doc/user/plugins.xml
@@ -63,7 +63,8 @@ on the local host 127.0.0.1.
 </para>
 
 <programlisting>
-# Check that the include subdirectory exists by looking for ~/include/mysql.h.
+# Check that the include subdirectory exists by looking for .../include/mysql.h.
+# (If this fails, there's a chance that it's in .../include/mysql/mysql.h instead.)
 <prompt>$ </prompt><userinput>[ -f ~/mysql-5.5/include/mysql.h ] &amp;&amp; echo "OK" || echo "Error"</userinput>
 OK
 
diff --git a/doc/user/preface.xml b/doc/user/preface.xml
index 0cc1065ea5cfd1f3aee3cd5413523e3c1215963a..c5975df9f7218706604b198551eea930bb013cca 100644
--- a/doc/user/preface.xml
+++ b/doc/user/preface.xml
@@ -214,9 +214,9 @@
   <para>
     Please report bugs in Tarantool at <link
     xlink:href="http://github.com/tarantool/tarantool/issues"/>. You can
-    contact developers directly on
+    contact developers directly on the
     <link xlink:href="irc://irc.freenode.net#tarantool">#tarantool</link>
-    IRC channel or via a mailing list,
+    IRC channel on freenode, or via a mailing list,
     <link xlink:href="https://googlegroups.com/group/tarantool">Tarantool Google group</link>.
   </para>
 </section>
diff --git a/doc/user/stored-procedures.xml b/doc/user/stored-procedures.xml
index 9f58ec6935064d0668ff76cd9e66cb54a87a6dd1..e675abdeb09367d2da00e65ed6bd0e2a85317680 100644
--- a/doc/user/stored-procedures.xml
+++ b/doc/user/stored-procedures.xml
@@ -629,11 +629,11 @@ tarantool&gt; <userinput>json.decode('{"hello": "world"}').hello</userinput>
             </para>
             <bridgehead renderas="sect4">Example</bridgehead>
 <programlisting>
-<prompt>tarantool&gt;</prompt> <userinput>-- When nil is assigned to a Lua-table field, the field disappears</userinput>
+<prompt>tarantool&gt;</prompt> <userinput>-- When nil is assigned to a Lua-table field, the field is null</userinput>
 <prompt>tarantool&gt;</prompt> <userinput>{nil, 'a', 'b'}</userinput>
----
-- 2: a
-  3: b
+- - null
+  - a
+  - b
 ...
 <prompt>tarantool&gt;</prompt> <userinput> -- When json.NULL is assigned to a Lua-table field, the field is json.NULL</userinput>
 <prompt>tarantool&gt;</prompt> <userinput>{json.NULL, 'a', 'b'}</userinput>
diff --git a/doc/user/tutorial.xml b/doc/user/tutorial.xml
index b366eeaaf3d1b131c56fab8f3cad4c31f5686602..dfe81560af544fda47755eb1cca8497fee8e920f 100644
--- a/doc/user/tutorial.xml
+++ b/doc/user/tutorial.xml
@@ -97,8 +97,8 @@ release=`lsb_release -c -s`
 <para>
 There is always an up-to-date Ubuntu repository at
 <link xlink:href="http://tarantool.org/dist/master/ubuntu">http://tarantool.org/dist/master/ubuntu</link>
-The repository contains builds for Ubuntu 12.04 "precise", 12.10 "quantal",
-13.04 "raring", 13.10 "saucy", 14.04 "Trusty".
+The repository contains builds for Ubuntu 12.04 "precise",
+13.10 "saucy", and 14.04 "trusty".
 Add the tarantool.org repository to your apt sources list
 $release is an environment variable which will contain the Ubuntu version
 code e.g. "precise". If you want the version that comes with
@@ -174,12 +174,12 @@ add the new section thus:
 <simplesect>
 <title>Fedora</title>
 <para>
-These instructions are applicable for Fedora 20.
+These instructions are applicable for Fedora 19 or Fedora 20.
 Pick the Fedora repository, for example <link xlink:href="http://tarantool.org/dist/master/fedora/20/x86_64">http://tarantool.org/dist/master/fedora/20/x86_64</link> for version 20, x86-64.
 Add the following section to your yum repository list
 (<filename>/etc/yum.repos.d/tarantool.repo</filename>)
 (in the following instructions, $releasever i.e. Fedora release
-version must be 2 and $basearch i.e. base architecture must be x86_64):
+version must be 19 or 20 and $basearch i.e. base architecture must be x86_64):
 <programlisting>
 <userinput>
 [tarantool]
@@ -194,13 +194,12 @@ For example, if you have Fedora version 20, you can add the new section thus:
 <userinput>
 <command>echo</command> "[tarantool]" | \
 <command>sudo tee</command> <filename>/etc/yum.repos.d/tarantool.repo</filename>
-<command>echo</command> "name=Fedora - Tarantool"| <command>sudo tee</command> <option>-a</option> <filename>/etc/yum.repos.d/tarantool.repo</filename>
-<command>echo</command> "baseurl="http://tarantool.org/dist/master/fedora/20/x86_64/" | \
+<command>echo</command> "name=Fedora-20 - Tarantool"| <command>sudo tee</command> <option>-a</option> <filename>/etc/yum.repos.d/tarantool.repo</filename>
+<command>echo</command> "baseurl=http://tarantool.org/dist/master/fedora/20/x86_64/" | \
 <command>sudo tee</command> <option>-a</option> <filename>/etc/yum.repos.d/tarantool.repo</filename>
 <command>echo</command> "enabled=1" | <command>sudo tee</command> <option>-a</option> <filename>/etc/yum.repos.d/tarantool.repo</filename>
-<command>echo</command> "gpgcheck=0" | <command>sudo tee</command> <option>-a</option> <filename>/etc/yum.repos.d/tarantool.repo</filename>
-</userinput>
-</programlisting>
+<command>echo</command> "gpgcheck=0" | <command>sudo tee</command> <option>-a</option> <filename>/etc/yum.repos.d/tarantool.repo</filename></userinput></programlisting>
+Then install with <code>sudo yum install tarantool</code>.
 </para>
 </simplesect>
 
@@ -237,7 +236,7 @@ so it's not a true binary download, some source code is involved.
 First upgrade Clang (the C compiler) to version 3.2 or later using
 Command Line Tools for Xcode disk image version 4.6+ from
 Apple Developer web-site. Then download the recipe file from
-<link xlink:href="tarantool.org/dist/master/tarantool.rb">tarantool.org/dist/master/tarantool.rb</link>.
+<link xlink:href="http://tarantool.org/dist/master/tarantool.rb">tarantool.org/dist/master/tarantool.rb</link>.
 Make the file executable, execute it, and the script in the file should
 handle the necessary steps with cmake, make, and make install.
 </para>
@@ -530,8 +529,7 @@ tarantool> box.cfg{listen=3301}
 2014-08-07 09:41:41.095 ... saving snapshot `./00000000000000000000.snap.inprogress'
 2014-08-07 09:41:41.127 ... done
 2014-08-07 09:41:41.128 ... primary: bound to 0.0.0.0:3301
-2014-08-07 09:41:41.128 ... ready to accept requests
-2014-08-07 09:41:41.128 ... started</computeroutput></programlisting>
+2014-08-07 09:41:41.128 ... ready to accept requests</computeroutput></programlisting>
 </para>
 
 <para>
@@ -623,8 +621,7 @@ The server name is <computeroutput><filename>tarantool</filename></computeroutpu
   <command>~/tarantool/src/tarantool</command> </userinput></programlisting>
 </para>
 <para>
-3. Try these requests:<programlisting><userinput>box.cfg{}
-console = require('console')
+3. Try these requests:<programlisting><userinput>sconsole = require('console')
 console.connect('localhost:3301')
 box.space.tester:select{2}</userinput></programlisting>
 </para>
diff --git a/doc/www/theme/templates/script b/doc/www/theme/templates/script
index 2526976f4d97a0e6af8910c62489d01b6a37b1f5..255753008cb53b7c5b2ae71c6e3aaa5b822c1bd3 100644
--- a/doc/www/theme/templates/script
+++ b/doc/www/theme/templates/script
@@ -1,18 +1,14 @@
 <script type="text/javascript">
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
 
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-22120502-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
+  ga('create', 'UA-22120502-1', 'auto');
+  ga('send', 'pageview');
 
 </script>
 
-
 <script type="text/javascript">//<![CDATA[
   (function(w,n,d,r,s){(new Image).src='http://dd.cd.b2.a2.top.mail.ru/counter?id=2284916;js=13'+
   ((r=d.referrer)?';r='+escape(r):'')+((s=w.screen)?';s='+s.width+'*'+s.height:'')+';_='+Math.random();})(window,navigator,document);//]]>