Reliable transaction submission diagram draft finished

This commit is contained in:
mDuo13
2019-03-15 17:13:35 -07:00
parent 36cc55e75a
commit 62fa289c04
4 changed files with 835 additions and 199 deletions

View File

@@ -4,8 +4,8 @@
<element>
<id>UMLClass</id>
<coordinates>
<x>470</x>
<y>80</y>
<x>160</x>
<y>60</y>
<w>180</w>
<h>90</h>
</coordinates>
@@ -16,19 +16,19 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>40</y>
<w>30</w>
<h>60</h>
<x>50</x>
<y>50</y>
<w>130</w>
<h>70</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>110.0;50.0;10.0;50.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>540</x>
<y>30</y>
<x>50</x>
<y>40</y>
<w>20</w>
<h>20</h>
</coordinates>
@@ -38,8 +38,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLClass</id>
<coordinates>
<x>470</x>
<y>200</y>
<x>390</x>
<y>50</y>
<w>180</w>
<h>110</h>
</coordinates>
@@ -51,30 +51,30 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>160</y>
<w>30</w>
<h>60</h>
<x>330</x>
<y>90</y>
<w>80</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>60.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>300</y>
<w>30</w>
<h>60</h>
<x>560</x>
<y>90</y>
<w>70</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>50.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<coordinates>
<x>470</x>
<y>340</y>
<x>610</x>
<y>80</y>
<w>180</w>
<h>50</h>
</coordinates>
@@ -85,8 +85,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLClass</id>
<coordinates>
<x>470</x>
<y>420</y>
<x>840</x>
<y>50</y>
<w>180</w>
<h>130</h>
</coordinates>
@@ -97,30 +97,30 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>380</y>
<w>30</w>
<h>60</h>
<x>780</x>
<y>90</y>
<w>80</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>60.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>540</y>
<w>30</w>
<h>60</h>
<x>1010</x>
<y>90</y>
<w>80</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>60.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Text</id>
<coordinates>
<x>490</x>
<y>0</y>
<x>10</x>
<y>10</y>
<w>160</w>
<h>30</h>
</coordinates>
@@ -131,8 +131,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLClass</id>
<coordinates>
<x>470</x>
<y>580</y>
<x>1070</x>
<y>80</y>
<w>180</w>
<h>50</h>
</coordinates>
@@ -143,8 +143,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLTimer</id>
<coordinates>
<x>480</x>
<y>660</y>
<x>1080</x>
<y>230</y>
<w>140</w>
<h>90</h>
</coordinates>
@@ -155,8 +155,8 @@ validated ledger</panel_attributes>
<element>
<id>UMLClass</id>
<coordinates>
<x>460</x>
<y>790</y>
<x>90</x>
<y>530</y>
<w>180</w>
<h>50</h>
</coordinates>
@@ -164,22 +164,11 @@ validated ledger</panel_attributes>
style=wordwrap</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>740</y>
<w>30</w>
<h>70</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;50.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>530</x>
<y>880</y>
<x>370</x>
<y>530</y>
<w>40</w>
<h>40</h>
</coordinates>
@@ -189,45 +178,46 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>830</y>
<w>30</w>
<h>70</h>
<x>260</x>
<y>540</y>
<w>130</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;50.0;10.0;10.0</additional_attributes>
<additional_attributes>110.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>560</x>
<y>880</y>
<w>220</w>
<h>50</h>
<x>400</x>
<y>530</y>
<w>240</w>
<h>60</h>
</coordinates>
<panel_attributes>lt=&lt;-
[transaction is not
in a validated ledger]</panel_attributes>
<additional_attributes>200.0;20.0;10.0;20.0</additional_attributes>
[transaction not found,
or is found in a
non-validated ledger]</panel_attributes>
<additional_attributes>220.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>910</y>
<w>180</w>
<h>130</h>
<x>160</x>
<y>560</y>
<w>250</w>
<h>120</h>
</coordinates>
<panel_attributes>lt=&lt;-
[transaction is
in a validated ledger]</panel_attributes>
<additional_attributes>10.0;110.0;10.0;10.0</additional_attributes>
<additional_attributes>10.0;100.0;10.0;60.0;230.0;60.0;230.0;10.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<coordinates>
<x>460</x>
<y>1020</y>
<x>90</x>
<y>660</y>
<w>180</w>
<h>50</h>
</coordinates>
@@ -238,8 +228,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>540</x>
<y>1100</y>
<x>160</x>
<y>740</y>
<w>20</w>
<h>20</h>
</coordinates>
@@ -249,8 +239,8 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>1060</y>
<x>160</x>
<y>700</y>
<w>30</w>
<h>60</h>
</coordinates>
@@ -260,8 +250,8 @@ style=wordwrap</panel_attributes>
<element>
<id>Text</id>
<coordinates>
<x>530</x>
<y>1120</y>
<x>150</x>
<y>760</y>
<w>60</w>
<h>30</h>
</coordinates>
@@ -272,8 +262,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>760</x>
<y>880</y>
<x>620</x>
<y>530</y>
<w>40</w>
<h>40</h>
</coordinates>
@@ -283,32 +273,34 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>570</x>
<y>670</y>
<w>410</w>
<h>230</h>
<x>630</x>
<y>240</y>
<w>640</w>
<h>310</h>
</coordinates>
<panel_attributes>lt=&lt;-
r2=[latest validated leger \nis &lt; LastLedgerSequence]</panel_attributes>
<additional_attributes>10.0;10.0;210.0;10.0;210.0;210.0</additional_attributes>
r2=[latest validated ledger \nis &lt; LastLedgerSequence]
r2pos=20,5</panel_attributes>
<additional_attributes>550.0;10.0;620.0;10.0;620.0;270.0;10.0;270.0;10.0;290.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>770</x>
<y>910</y>
<w>280</w>
<h>70</h>
<x>650</x>
<y>540</y>
<w>240</w>
<h>50</h>
</coordinates>
<panel_attributes>lt=&lt;-
r1=[latest validated leger \nis ≥ LastLedgerSequence]</panel_attributes>
<additional_attributes>260.0;50.0;10.0;50.0;10.0;10.0</additional_attributes>
r1=[latest validated ledger \nis ≥ LastLedgerSequence]
r1pos=-10,30</panel_attributes>
<additional_attributes>220.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>1030</x>
<y>940</y>
<x>870</x>
<y>530</y>
<w>40</w>
<h>40</h>
</coordinates>
@@ -318,22 +310,22 @@ r1=[latest validated leger \nis ≥ LastLedgerSequence]</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>1040</x>
<y>970</y>
<w>320</w>
<h>90</h>
<x>420</x>
<y>560</y>
<w>490</w>
<h>160</h>
</coordinates>
<panel_attributes>lt=&lt;-
[server has continuous ledger history
from A to LastLedgerSequence, inclusive]
</panel_attributes>
<additional_attributes>10.0;70.0;10.0;10.0</additional_attributes>
<additional_attributes>10.0;140.0;10.0;90.0;470.0;90.0;470.0;10.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>1030</x>
<y>1140</y>
<x>630</x>
<y>710</y>
<w>40</w>
<h>40</h>
</coordinates>
@@ -343,35 +335,37 @@ from A to LastLedgerSequence, inclusive]
<element>
<id>Relation</id>
<coordinates>
<x>1040</x>
<y>1100</y>
<w>30</w>
<h>60</h>
<x>520</x>
<y>720</y>
<w>130</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>110.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>1060</x>
<y>710</y>
<w>300</w>
<h>270</h>
<x>900</x>
<y>530</y>
<w>230</w>
<h>130</h>
</coordinates>
<panel_attributes>lt=&lt;-
[server does not have
continuous ledger history
from A to LastLedgerSequence
[server does not
have continuous
ledger history
from A to
LastLedgerSequence
(inclusive)]
</panel_attributes>
<additional_attributes>70.0;10.0;70.0;250.0;10.0;250.0</additional_attributes>
<additional_attributes>210.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<coordinates>
<x>1020</x>
<y>660</y>
<x>1110</x>
<y>530</y>
<w>180</w>
<h>60</h>
</coordinates>
@@ -382,19 +376,19 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>770</x>
<y>670</y>
<w>270</w>
<h>30</h>
<x>1240</x>
<y>240</y>
<w>90</w>
<h>330</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;10.0;250.0;10.0</additional_attributes>
<additional_attributes>10.0;10.0;70.0;10.0;70.0;310.0;50.0;310.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<coordinates>
<x>970</x>
<y>1040</y>
<x>350</x>
<y>700</y>
<w>180</w>
<h>70</h>
</coordinates>
@@ -405,22 +399,22 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>860</x>
<y>1140</y>
<w>190</w>
<h>60</h>
<x>240</x>
<y>740</y>
<w>430</w>
<h>140</h>
</coordinates>
<panel_attributes>lt=&lt;-
[Account Sequence is
less than or equal to
transaction Sequence]</panel_attributes>
<additional_attributes>10.0;20.0;170.0;20.0</additional_attributes>
<additional_attributes>10.0;120.0;10.0;70.0;410.0;70.0;410.0;10.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>770</x>
<y>1310</y>
<x>690</x>
<y>880</y>
<w>20</w>
<h>20</h>
</coordinates>
@@ -430,8 +424,8 @@ transaction Sequence]</panel_attributes>
<element>
<id>UMLClass</id>
<coordinates>
<x>690</x>
<y>1120</y>
<x>200</x>
<y>860</y>
<w>180</w>
<h>80</h>
</coordinates>
@@ -442,8 +436,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLClass</id>
<coordinates>
<x>690</x>
<y>1230</y>
<x>450</x>
<y>870</y>
<w>180</w>
<h>50</h>
</coordinates>
@@ -454,30 +448,30 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>770</x>
<y>1190</y>
<w>30</w>
<h>60</h>
<x>370</x>
<y>880</y>
<w>100</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>80.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>770</x>
<y>1270</y>
<w>30</w>
<h>60</h>
<x>620</x>
<y>880</y>
<w>90</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>70.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Text</id>
<coordinates>
<x>760</x>
<y>1330</y>
<x>680</x>
<y>900</y>
<w>60</w>
<h>30</h>
</coordinates>
@@ -488,8 +482,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>210</x>
<y>250</y>
<x>50</x>
<y>220</y>
<w>20</w>
<h>20</h>
</coordinates>
@@ -499,8 +493,8 @@ style=wordwrap</panel_attributes>
<element>
<id>Text</id>
<coordinates>
<x>140</x>
<y>220</y>
<x>10</x>
<y>190</y>
<w>190</w>
<h>30</h>
</coordinates>
@@ -511,22 +505,22 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>1060</x>
<y>1140</y>
<w>260</w>
<x>660</x>
<y>710</y>
<w>240</w>
<h>60</h>
</coordinates>
<panel_attributes>lt=&lt;-
[Account Sequence is
greater than transaction
Sequence]</panel_attributes>
<additional_attributes>240.0;20.0;10.0;20.0</additional_attributes>
<additional_attributes>220.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<coordinates>
<x>1300</x>
<y>1130</y>
<x>880</x>
<y>700</y>
<w>180</w>
<h>80</h>
</coordinates>
@@ -537,8 +531,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLClass</id>
<coordinates>
<x>140</x>
<y>300</y>
<x>160</x>
<y>240</y>
<w>180</w>
<h>80</h>
</coordinates>
@@ -549,30 +543,30 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>210</x>
<y>260</y>
<w>30</w>
<x>50</x>
<y>230</y>
<w>130</w>
<h>60</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>110.0;40.0;10.0;40.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>210</x>
<y>370</y>
<w>30</w>
<h>60</h>
<x>330</x>
<y>260</y>
<w>100</w>
<h>30</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>80.0;10.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>200</x>
<y>410</y>
<x>410</x>
<y>250</y>
<w>40</w>
<h>40</h>
</coordinates>
@@ -582,22 +576,22 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>230</x>
<y>420</y>
<w>210</w>
<h>110</h>
<x>420</x>
<y>280</y>
<w>150</w>
<h>130</h>
</coordinates>
<panel_attributes>lt=&lt;-
[final outcomes of
all transactions
are recorded]</panel_attributes>
<additional_attributes>70.0;90.0;70.0;10.0;10.0;10.0</additional_attributes>
<additional_attributes>10.0;110.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>Text</id>
<coordinates>
<x>280</x>
<y>530</y>
<x>410</x>
<y>410</y>
<w>60</w>
<h>30</h>
</coordinates>
@@ -608,8 +602,8 @@ style=wordwrap</panel_attributes>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>290</x>
<y>510</y>
<x>420</x>
<y>390</y>
<w>20</w>
<h>20</h>
</coordinates>
@@ -619,32 +613,33 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>0</x>
<y>420</y>
<w>240</w>
<h>250</h>
<x>440</x>
<y>250</y>
<w>230</w>
<h>60</h>
</coordinates>
<panel_attributes>lt=&lt;-
r2=[final outcomes of\nsome transactions\nare not recorded]
r2pos=-50,100</panel_attributes>
<additional_attributes>220.0;230.0;220.0;190.0;140.0;190.0;140.0;10.0;200.0;10.0</additional_attributes>
[final outcomes of
some transactions
are not recorded]</panel_attributes>
<additional_attributes>210.0;20.0;10.0;20.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>540</x>
<y>620</y>
<x>1140</x>
<y>120</y>
<w>30</w>
<h>60</h>
<h>130</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>10.0;40.0;10.0;10.0</additional_attributes>
<additional_attributes>10.0;110.0;10.0;10.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<coordinates>
<x>140</x>
<y>650</y>
<x>650</x>
<y>220</y>
<w>180</w>
<h>100</h>
</coordinates>
@@ -655,12 +650,40 @@ style=wordwrap</panel_attributes>
<element>
<id>Relation</id>
<coordinates>
<x>220</x>
<y>740</y>
<w>260</w>
<h>90</h>
<x>850</x>
<y>310</y>
<w>320</w>
<h>160</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>240.0;70.0;10.0;70.0;10.0;10.0</additional_attributes>
<additional_attributes>10.0;140.0;300.0;140.0;300.0;10.0</additional_attributes>
</element>
<element>
<id>UMLNote</id>
<coordinates>
<x>1080</x>
<y>700</y>
<w>230</w>
<h>230</h>
</coordinates>
<panel_attributes>bg=#fed74c
transparency=0
style=wordwrap
Some reasons an unknown transaction may have been validated:
- The transaction was malleable and succeeded with a different hash.
- A different program or person with your secret key is also sending transactions from the same account.
- You previously sent a transaction, but lost your record of it.</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>50</x>
<y>260</y>
<w>830</w>
<h>310</h>
</coordinates>
<panel_attributes>lt=&lt;-</panel_attributes>
<additional_attributes>40.0;290.0;10.0;290.0;10.0;190.0;810.0;190.0;810.0;10.0;780.0;10.0</additional_attributes>
</element>
</diagram>

View File

@@ -66,6 +66,10 @@ RippleAPI uses the `maxLedgerVersion` field of [Transaction Instructions](ripple
## Best Practices
The following diagram summarizes the recommended flow for submitting a transaction and determining its outcome:
[![Reliable transaction submission flowchart](img/reliable-tx-submission.svg)](img/reliable-tx-submission.svg)
### Reliable Transactions Submission