Author: cutting
Date: Thu Jun 10 22:35:40 2010
New Revision: 953485
URL: http://svn.apache.org/viewvc?rev=953485&view=rev
Log:
AVRO-447. Describe implicit protocol system error in spec.
Modified:
avro/trunk/CHANGES.txt
avro/trunk/doc/src/content/xdocs/spec.xml
Modified: avro/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/avro/trunk/CHANGES.txt?rev=953485&r1=953484&r2=953485&view=diff
==============================================================================
--- avro/trunk/CHANGES.txt (original)
+++ avro/trunk/CHANGES.txt Thu Jun 10 22:35:40 2010
@@ -35,6 +35,8 @@ Avro 1.4.0 (unreleased)
(version, handshake schemas, and interop data directory)
(Patrick Wendell via hammer)
+ AVRO-447. Describe implicit protocol "system" error in spec. (cutting)
+
BUG FIXES
AVRO-502. Memory leak from parsing JSON schema.
Modified: avro/trunk/doc/src/content/xdocs/spec.xml
URL:
http://svn.apache.org/viewvc/avro/trunk/doc/src/content/xdocs/spec.xml?rev=953485&r1=953484&r2=953485&view=diff
==============================================================================
--- avro/trunk/doc/src/content/xdocs/spec.xml (original)
+++ avro/trunk/doc/src/content/xdocs/spec.xml Thu Jun 10 22:35:40 2010
@@ -700,7 +700,17 @@
typed <em>parameter</em> schemas (this has the same form
as the fields of a record declaration);</li>
<li>a <em>response</em> schema; </li>
- <li>an optional union of <em>error</em> schemas; and</li>
+ <li>an optional union of declared <em>error</em> schemas.
+ The <em>effective</em> union has <code>"string"</code>
+ prepended to the declared union, to permit transmission of
+ undeclared "system" errors. For example, if the declared
+ error union is <code>["AccessError"]</code>, then the
+ effective union is <code>["string", "AccessError"]</code>.
+ When no errors are declared, the effective error union
+ is <code>["string"]</code>. Errors are serialized using
+ the effective union; however, a protocol's JSON
+ declaration contains only the declared union.
+ </li>
<li>an optional <em>one-way</em> boolean parameter.</li>
</ul>
<p>A request parameter list is processed equivalently to an
@@ -967,7 +977,8 @@
<li>if the error flag is false, the message <em>response</em>,
serialized per the message's response schema.</li>
<li>if the error flag is true, the <em>error</em>,
- serialized per the message's error union schema.</li>
+ serialized per the message's effective error union
+ schema.</li>
</ul>
</li>
</ul>