Skip to content

Commit

Permalink
Activate/deactivate transactions in upgradeneeded. For #163
Browse files Browse the repository at this point in the history
  • Loading branch information
inexorabletash committed Mar 7, 2017
1 parent 6bdf2aa commit 5d1070b
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 9 deletions.
6 changes: 4 additions & 2 deletions index.bs
Expand Up @@ -5480,11 +5480,13 @@ for the [=database=], and a |request|.
1. Set |request|'s [=request/result=] to |connection|.
2. Set |request|'s [=request/transaction=] to |transaction|.
3. Set the [=request/done flag=] on the [=request=].
4. Let |didThrow| be the result of running the steps to
4. Set |transaction|'s [=transaction/active flag=].
5. Let |didThrow| be the result of running the steps to
[=fire a version change event=] named
<code>[=upgradeneeded=]</code> at |request| with |old
version| and |version|.
5. If |didThrow| is set, run the steps to [=abort a
6. Unset |transaction|'s [=transaction/active flag=].
7. If |didThrow| is set, run the steps to [=abort a
transaction=] with the |error| property set to a newly
<a for=exception>created</a> "{{AbortError}}" {{DOMException}}.

Expand Down
18 changes: 11 additions & 7 deletions index.html
Expand Up @@ -5380,9 +5380,13 @@ <h3 class="heading settled" data-level="5.7" id="upgrade-transaction-steps"><spa
<p>Set <var>request</var>’s <a data-link-type="dfn" href="#request-transaction" id="ref-for-request-transaction-6">transaction</a> to <var>transaction</var>.</p>
<li data-md="">
<p>Set the <a data-link-type="dfn" href="#request-done-flag" id="ref-for-request-done-flag-16">done flag</a> on the <a data-link-type="dfn" href="#request" id="ref-for-request-36">request</a>.</p>
<li data-md="">
<p>Set <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-7">active flag</a>.</p>
<li data-md="">
<p>Let <var>didThrow</var> be the result of running the steps to <a data-link-type="dfn" href="#fire-a-version-change-event" id="ref-for-fire-a-version-change-event-6">fire a version change event</a> named <code><a data-link-type="dfn" href="#request-upgradeneeded" id="ref-for-request-upgradeneeded-10">upgradeneeded</a></code> at <var>request</var> with <var>old
version</var> and <var>version</var>.</p>
<li data-md="">
<p>Unset <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-8">active flag</a>.</p>
<li data-md="">
<p>If <var>didThrow</var> is set, run the steps to <a data-link-type="dfn" href="#abort-a-transaction" id="ref-for-abort-a-transaction-9">abort a
transaction</a> with the <var>error</var> property set to a newly <a data-link-type="dfn" href="https://heycam.github.io/webidl/#dfn-create-exception">created</a> "<code class="idl"><a data-link-type="idl" href="https://heycam.github.io/webidl/#aborterror">AbortError</a></code>" <code class="idl"><a data-link-type="idl" href="https://heycam.github.io/webidl/#dfn-DOMException">DOMException</a></code>.</p>
Expand Down Expand Up @@ -5469,11 +5473,11 @@ <h3 class="heading settled" data-level="5.9" id="fire-success-event"><span class
<li data-md="">
<p>Let <var>legacyOutputDidListenersThrowFlag</var> be initially unset.</p>
<li data-md="">
<p>Set <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-7">active flag</a>.</p>
<p>Set <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-9">active flag</a>.</p>
<li data-md="">
<p><a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-event-dispatch">Dispatch</a> <var>event</var> at <var>request</var> with <var>legacyOutputDidListenersThrowFlag</var>.</p>
<li data-md="">
<p>Unset <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-8">active flag</a>.</p>
<p>Unset <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-10">active flag</a>.</p>
<li data-md="">
<p>If <var>legacyOutputDidListenersThrowFlag</var> is set,
run the steps to <a data-link-type="dfn" href="#abort-a-transaction" id="ref-for-abort-a-transaction-12">abort a transaction</a> with <var>transaction</var> and a newly <a data-link-type="dfn" href="https://heycam.github.io/webidl/#dfn-create-exception">created</a> "<code class="idl"><a data-link-type="idl" href="https://heycam.github.io/webidl/#aborterror">AbortError</a></code>" <code class="idl"><a data-link-type="idl" href="https://heycam.github.io/webidl/#dfn-DOMException">DOMException</a></code>.</p>
Expand All @@ -5495,11 +5499,11 @@ <h3 class="heading settled" data-level="5.10" id="fire-error-event"><span class=
<li data-md="">
<p>Let <var>legacyOutputDidListenersThrowFlag</var> be initially unset.</p>
<li data-md="">
<p>Set <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-9">active flag</a>.</p>
<p>Set <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-11">active flag</a>.</p>
<li data-md="">
<p><a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-event-dispatch">Dispatch</a> <var>event</var> at <a data-link-type="dfn" href="#request" id="ref-for-request-37">request</a> with <var>legacyOutputDidListenersThrowFlag</var>.</p>
<li data-md="">
<p>Unset <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-10">active flag</a>.</p>
<p>Unset <var>transaction</var>’s <a data-link-type="dfn" href="#transaction-active-flag" id="ref-for-transaction-active-flag-12">active flag</a>.</p>
<li data-md="">
<p>If <var>legacyOutputDidListenersThrowFlag</var> is set,
run the steps to <a data-link-type="dfn" href="#abort-a-transaction" id="ref-for-abort-a-transaction-13">abort a transaction</a> with <var>transaction</var> and a newly <a data-link-type="dfn" href="https://heycam.github.io/webidl/#dfn-create-exception">created</a> "<code class="idl"><a data-link-type="idl" href="https://heycam.github.io/webidl/#aborterror">AbortError</a></code>" <code class="idl"><a data-link-type="idl" href="https://heycam.github.io/webidl/#dfn-DOMException">DOMException</a></code> and terminate these steps. This is done even if the
Expand Down Expand Up @@ -7999,9 +8003,9 @@ <h2 class="no-num no-ref heading settled" id="idl-index"><span class="content">I
<li><a href="#ref-for-transaction-active-flag-1">2.7. Transactions</a> <a href="#ref-for-transaction-active-flag-2">(2)</a>
<li><a href="#ref-for-transaction-active-flag-3">2.7.1. Transaction Lifetime</a> <a href="#ref-for-transaction-active-flag-4">(2)</a>
<li><a href="#ref-for-transaction-active-flag-5">4.9. The IDBTransaction interface</a>
<li><a href="#ref-for-transaction-active-flag-6">5.7. Running an upgrade transaction</a>
<li><a href="#ref-for-transaction-active-flag-7">5.9. Firing a success event</a> <a href="#ref-for-transaction-active-flag-8">(2)</a>
<li><a href="#ref-for-transaction-active-flag-9">5.10. Firing an error event</a> <a href="#ref-for-transaction-active-flag-10">(2)</a>
<li><a href="#ref-for-transaction-active-flag-6">5.7. Running an upgrade transaction</a> <a href="#ref-for-transaction-active-flag-7">(2)</a> <a href="#ref-for-transaction-active-flag-8">(3)</a>
<li><a href="#ref-for-transaction-active-flag-9">5.9. Firing a success event</a> <a href="#ref-for-transaction-active-flag-10">(2)</a>
<li><a href="#ref-for-transaction-active-flag-11">5.10. Firing an error event</a> <a href="#ref-for-transaction-active-flag-12">(2)</a>
</ul>
</aside>
<aside class="dfn-panel" data-for="transaction-active">
Expand Down

0 comments on commit 5d1070b

Please sign in to comment.