Äcdocutils.nodes
document
q)Åq}q(U	nametypesq}q(X$���use case 30 - mn outage notificationqNX���uc30qàX���historyqàuUsubstitution_defsq	}q
Uparse_messagesq]qUcurrent_sourceq
NU
decorationqNUautofootnote_startqKUnameidsq}q(hU"use-case-30-mn-outage-notificationqhUuc30qhUhistoryquUchildrenq]q(cdocutils.nodes
target
q)Åq}q(U	rawsourceqX	���.. _UC30:UparentqhUsourceqXj���/var/lib/jenkins/jobs/API_Documentation_trunk/workspace/api-documentation/source/design/UseCases/30_uc.txtqUtagnameqUtargetqU
attributesq }q!(Uidsq"]Ubackrefsq#]Udupnamesq$]Uclassesq%]Unamesq&]Urefidq'huUlineq(KUdocumentq)hh]ubcdocutils.nodes
section
q*)Åq+}q,(hU�hhhhUexpect_referenced_by_nameq-}q.hhshUsectionq/h }q0(h$]h%]h#]h"]q1(hheh&]q2(hheuh(Kh)hUexpect_referenced_by_idq3}q4hhsh]q5(cdocutils.nodes
title
q6)Åq7}q8(hX$���Use Case 30 - MN Outage Notificationq9hh+hhhUtitleq:h }q;(h$]h%]h#]h"]h&]uh(Kh)hh]q<cdocutils.nodes
Text
q=X$���Use Case 30 - MN Outage Notificationq>ÖÅq?}q@(hh9hh7ubaubcsphinx.addnodes
index
qA)ÅqB}qC(hU�hh+hhhUindexqDh }qE(h"]h#]h$]h%]h&]UentriesqF]qG((UsingleqHX���Use Case 30Uindex-0qIU�NtqJ(hHX���UC30hIU�NtqK(hHX	���MN outagehIU�NtqL(hHX���healthhIU�NtqM(hHX���notificationhIU�NtqNeUinlineqOâuh(Kh)hh]ubh)ÅqP}qQ(hU�hh+hhhhh }qR(h"]h#]h$]h%]h&]h'hIuh(Kh)hh]ubcdocutils.nodes
definition_list
qS)ÅqT}qU(hU�hh+hhh-}hUdefinition_listqVh }qW(h$]h%]h#]h"]qXhIah&]uh(Nh)hh3}qYhIhPsh]qZ(cdocutils.nodes
definition_list_item
q[)Åq\}q](hX+���Revisions
View document revision history_.
hhThhhUdefinition_list_itemq^h }q_(h$]h%]h#]h"]h&]uh(K	h]q`(cdocutils.nodes
term
qa)Åqb}qc(hX	���Revisionsqdhh\hhhUtermqeh }qf(h$]h%]h#]h"]h&]uh(K	h]qgh=X	���RevisionsqhÖÅqi}qj(hhdhhbubaubcdocutils.nodes
definition
qk)Åql}qm(hU�h }qn(h$]h%]h#]h"]h&]uhh\h]qocdocutils.nodes
paragraph
qp)Åqq}qr(hX ���View document revision history_.hhlhhhU	paragraphqsh }qt(h$]h%]h#]h"]h&]uh(K	h]qu(h=X���View document revision qvÖÅqw}qx(hX���View document revision hhqubcdocutils.nodes
reference
qy)Åqz}q{(hX���history_Uresolvedq|KhhqhU	referenceq}h }q~(UnameX���historyqUrefuriqÄXî���https://redmine.dataone.org/projects/d1/repository/changes/documents/Projects/cicore/architecture/api-documentation/source/design/UseCases/30_uc.txtqÅh"]h#]h$]h%]h&]uh]qÇh=X���historyqÉÖÅqÑ}qÖ(hU�hhzubaubh=X���.ÖÅqÜ}qá(hX���.hhqubeubahU
definitionqàubeubh[)Åqâ}qä(hXè���Goal
MN can notify CN about pending outages, severity, and duration, and CNs may
want to act on that knowledge to maintain seamless operation.
hhThhhh^h }qã(h$]h%]h#]h"]h&]uh(K
h)hh]qå(ha)Åqç}qé(hX���Goalqèhhâhhhheh }qê(h$]h%]h#]h"]h&]uh(K
h]qëh=X���GoalqíÖÅqì}qî(hhèhhçubaubhk)Åqï}qñ(hU�h }qó(h$]h%]h#]h"]h&]uhhâh]qòhp)Åqô}qö(hXâ���MN can notify CN about pending outages, severity, and duration, and CNs may
want to act on that knowledge to maintain seamless operation.qõhhïhhhhsh }qú(h$]h%]h#]h"]h&]uh(Kh]qùh=Xâ���MN can notify CN about pending outages, severity, and duration, and CNs may
want to act on that knowledge to maintain seamless operation.qûÖÅqü}q†(hhõhhôubaubahhàubeubh[)Åq°}q¢(hX´��Summary
It is likely that Member Nodes will need to be taken offline from time to
time for maintenance or other planned outages. There should be a mechanism
for Member Nodes to notify Coordinating Nodes of the impending outage so that
the Coordinating Nodes can adjust replication of content to ensure ongoing
availability. The migration of content should be tempered with the duration
of the outage and the number of existing copies of content available on
other node. For short durations outages, the expense of moving the content
around may not be justified. However, for lengthy outages, it would be
preferable to replicate as much content as practical to ensure ongoing
access.
hhThhhh^h }q£(h$]h%]h#]h"]h&]uh(Kh)hh]q§(ha)Åq•}q¶(hX���Summaryqßhh°hhhheh }q®(h$]h%]h#]h"]h&]uh(Kh]q©h=X���Summaryq™ÖÅq´}q¨(hhßhh•ubaubhk)Åq≠}qÆ(hU�h }qØ(h$]h%]h#]h"]h&]uhh°h]q∞hp)Åq±}q≤(hX¢��It is likely that Member Nodes will need to be taken offline from time to
time for maintenance or other planned outages. There should be a mechanism
for Member Nodes to notify Coordinating Nodes of the impending outage so that
the Coordinating Nodes can adjust replication of content to ensure ongoing
availability. The migration of content should be tempered with the duration
of the outage and the number of existing copies of content available on
other node. For short durations outages, the expense of moving the content
around may not be justified. However, for lengthy outages, it would be
preferable to replicate as much content as practical to ensure ongoing
access.q≥hh≠hhhhsh }q¥(h$]h%]h#]h"]h&]uh(Kh]qµh=X¢��It is likely that Member Nodes will need to be taken offline from time to
time for maintenance or other planned outages. There should be a mechanism
for Member Nodes to notify Coordinating Nodes of the impending outage so that
the Coordinating Nodes can adjust replication of content to ensure ongoing
availability. The migration of content should be tempered with the duration
of the outage and the number of existing copies of content available on
other node. For short durations outages, the expense of moving the content
around may not be justified. However, for lengthy outages, it would be
preferable to replicate as much content as practical to ensure ongoing
access.q∂ÖÅq∑}q∏(hh≥hh±ubaubahhàubeubh[)Åqπ}q∫(hXi���Actors
- Member Node
- Member Node administrator
- Coordinating Nodes
- Coordinating Node administrators
hhThhhh^h }qª(h$]h%]h#]h"]h&]uh(Kh)hh]qº(ha)ÅqΩ}qæ(hX���Actorsqøhhπhhhheh }q¿(h$]h%]h#]h"]h&]uh(Kh]q¡h=X���Actorsq¬ÖÅq√}qƒ(hhøhhΩubaubhk)Åq≈}q∆(hU�h }q«(h$]h%]h#]h"]h&]uhhπh]q»cdocutils.nodes
bullet_list
q…)Åq }qÀ(hU�h }qÃ(UbulletqÕX���-h"]h#]h$]h%]h&]uhh≈h]qŒ(cdocutils.nodes
list_item
qœ)Åq–}q—(hX���Member Nodeq“h }q”(h$]h%]h#]h"]h&]uhh h]q‘hp)Åq’}q÷(hh“hh–hhhhsh }q◊(h$]h%]h#]h"]h&]uh(Kh]qÿh=X���Member NodeqŸÖÅq⁄}q€(hh“hh’ubaubahU	list_itemq‹ubhœ)Åq›}qfi(hX���Member Node administratorqflh }q‡(h$]h%]h#]h"]h&]uhh h]q·hp)Åq‚}q„(hhflhh›hhhhsh }q‰(h$]h%]h#]h"]h&]uh(Kh]qÂh=X���Member Node administratorqÊÖÅqÁ}qË(hhflhh‚ubaubahh‹ubhœ)ÅqÈ}qÍ(hX���Coordinating NodesqÎh }qÏ(h$]h%]h#]h"]h&]uhh h]qÌhp)ÅqÓ}qÔ(hhÎhhÈhhhhsh }q(h$]h%]h#]h"]h&]uh(Kh]qÒh=X���Coordinating NodesqÚÖÅqÛ}qÙ(hhÎhhÓubaubahh‹ubhœ)Åqı}qˆ(hX!���Coordinating Node administrators
h }q˜(h$]h%]h#]h"]h&]uhh h]q¯hp)Åq˘}q˙(hX ���Coordinating Node administratorsq˚hhıhhhhsh }q¸(h$]h%]h#]h"]h&]uh(Kh]q˝h=X ���Coordinating Node administratorsq˛ÖÅqˇ}r���(hh˚hh˘ubaubahh‹ubehUbullet_listr��ubahhàubeubh[)År��}r��(hXè���Preconditions
- Member Node is participating in the DataONE federation
- Content stored on the Member Node needs to be available while offline
hhThhhh^h }r��(h$]h%]h#]h"]h&]uh(K#h)hh]r��(ha)År��}r��(hX
���Preconditionsr��hj��hhhheh }r	��(h$]h%]h#]h"]h&]uh(K#h]r
��h=X
���Preconditionsr��ÖÅr��}r
��(hj��hj��ubaubhk)År��}r��(hU�h }r��(h$]h%]h#]h"]h&]uhj��h]r��h…)År��}r��(hU�h }r��(hÕX���-h"]h#]h$]h%]h&]uhj��h]r��(hœ)År��}r��(hX6���Member Node is participating in the DataONE federationr��h }r��(h$]h%]h#]h"]h&]uhj��h]r��hp)År��}r��(hj��hj��hhhhsh }r��(h$]h%]h#]h"]h&]uh(K"h]r��h=X6���Member Node is participating in the DataONE federationr��ÖÅr ��}r!��(hj��hj��ubaubahh‹ubhœ)År"��}r#��(hXF���Content stored on the Member Node needs to be available while offline
h }r$��(h$]h%]h#]h"]h&]uhj��h]r%��hp)År&��}r'��(hXE���Content stored on the Member Node needs to be available while offliner(��hj"��hhhhsh }r)��(h$]h%]h#]h"]h&]uh(K#h]r*��h=XE���Content stored on the Member Node needs to be available while offliner+��ÖÅr,��}r-��(hj(��hj&��ubaubahh‹ubehj��ubahhàubeubh[)År.��}r/��(hX3���Triggers
- A Member Node needs to be taken offline
hhThhhh^h }r0��(h$]h%]h#]h"]h&]uh(K&h)hh]r1��(ha)År2��}r3��(hX���Triggersr4��hj.��hhhheh }r5��(h$]h%]h#]h"]h&]uh(K&h]r6��h=X���Triggersr7��ÖÅr8��}r9��(hj4��hj2��ubaubhk)År:��}r;��(hU�h }r<��(h$]h%]h#]h"]h&]uhj.��h]r=��h…)År>��}r?��(hU�h }r@��(hÕX���-h"]h#]h$]h%]h&]uhj:��h]rA��hœ)ÅrB��}rC��(hX(���A Member Node needs to be taken offline
h }rD��(h$]h%]h#]h"]h&]uhj>��h]rE��hp)ÅrF��}rG��(hX'���A Member Node needs to be taken offlinerH��hjB��hhhhsh }rI��(h$]h%]h#]h"]h&]uh(K&h]rJ��h=X'���A Member Node needs to be taken offlinerK��ÖÅrL��}rM��(hjH��hjF��ubaubahh‹ubahj��ubahhàubeubh[)ÅrN��}rO��(hX·���Post Conditions
- A decision has been made on which content to replicate from the Member
  Node
- Content is replicated from the Member Node
- Notification to the Member Node operator of replication completion is
  provided

hhThhhh^h }rP��(h$]h%]h#]h"]h&]uh(K.h)hh]rQ��(ha)ÅrR��}rS��(hX���Post ConditionsrT��hjN��hhhheh }rU��(h$]h%]h#]h"]h&]uh(K.h]rV��h=X���Post ConditionsrW��ÖÅrX��}rY��(hjT��hjR��ubaubhk)ÅrZ��}r[��(hU�h }r\��(h$]h%]h#]h"]h&]uhjN��h]r]��h…)År^��}r_��(hU�h }r`��(hÕX���-h"]h#]h$]h%]h&]uhjZ��h]ra��(hœ)Årb��}rc��(hXK���A decision has been made on which content to replicate from the Member
Nodeh }rd��(h$]h%]h#]h"]h&]uhj^��h]re��hp)Årf��}rg��(hXK���A decision has been made on which content to replicate from the Member
Noderh��hjb��hhhhsh }ri��(h$]h%]h#]h"]h&]uh(K)h]rj��h=XK���A decision has been made on which content to replicate from the Member
Noderk��ÖÅrl��}rm��(hjh��hjf��ubaubahh‹ubhœ)Årn��}ro��(hX*���Content is replicated from the Member Noderp��h }rq��(h$]h%]h#]h"]h&]uhj^��h]rr��hp)Års��}rt��(hjp��hjn��hhhhsh }ru��(h$]h%]h#]h"]h&]uh(K+h]rv��h=X*���Content is replicated from the Member Noderw��ÖÅrx��}ry��(hjp��hjs��ubaubahh‹ubhœ)Årz��}r{��(hXP���Notification to the Member Node operator of replication completion is
provided

h }r|��(h$]h%]h#]h"]h&]uhj^��h]r}��hp)År~��}r��(hXN���Notification to the Member Node operator of replication completion is
providedr��hjz��hhhhsh }r��(h$]h%]h#]h"]h&]uh(K,h]r��h=XN���Notification to the Member Node operator of replication completion is
providedrÉ��ÖÅrÑ��}rÖ��(hjÄ��hj~��ubaubahh‹ubehj��ubahhàubeubeubcdocutils.nodes
comment
rÜ��)Årá��}rà��(hX ��@startuml images/30_seq.png
participant "State of Health API" as c_health << Coordinating Node >>
participant "State of Health API" as m_health << Member Node >>
m_health -> c_health: reportPendingEvent ()
m_health <-- c_health: ack
c_health -> c_health: actOnPendingEvent (event)
@endumlhh+hhhUcommentr�h }r�(U	xml:spacer�Upreserver�h"]h#]h$]h%]h&]uh(K8h)hh]r�h=X ��@startuml images/30_seq.png
participant "State of Health API" as c_health << Coordinating Node >>
participant "State of Health API" as m_health << Member Node >>
m_health -> c_health: reportPendingEvent ()
m_health <-- c_health: ack
c_health -> c_health: actOnPendingEvent (event)
@endumlré��ÖÅrè��}rê��(hU�hjá��ubaubcdocutils.nodes
image
rë��)Årí��}rì��(hX���.. image:: images/30_seq.png
hh+hhhUimagerî��h }rï��(UuriX!���design/UseCases/images/30_seq.pngrñ��h"]h#]h$]h%]U
candidatesró��}rò��U*jñ��sh&]uh(K:h)hh]ubhp)Årô��}rö��(hX≤���*Figure 1.* Interactions for use case 30. MN can notify CN about pending
outages, severity and duration, and CNs may want to act on that knowledge to
maintain seamless operation.hh+hhhhsh }rõ��(h$]h%]h#]h"]h&]uh(K;h)hh]rú��(cdocutils.nodes
emphasis
rù��)Årû��}rü��(hX���*Figure 1.*h }r†��(h$]h%]h#]h"]h&]uhjô��h]r°��h=X	���Figure 1.r¢��ÖÅr£��}r§��(hU�hjû��ubahUemphasisr•��ubh=Xß��� Interactions for use case 30. MN can notify CN about pending
outages, severity and duration, and CNs may want to act on that knowledge to
maintain seamless operation.r¶��ÖÅrß��}r®��(hXß��� Interactions for use case 30. MN can notify CN about pending
outages, severity and duration, and CNs may want to act on that knowledge to
maintain seamless operation.hjô��ubeubh)År©��}r™��(hX°���.. _history: https://redmine.dataone.org/projects/d1/repository/changes/documents/Projects/cicore/architecture/api-documentation/source/design/UseCases/30_uc.txtU
referencedr´��Khh+hhhhh }r¨��(hÄhÅh"]r≠��hah#]h$]h%]h&]rÆ��hauh(K?h)hh]ubeubehU�UtransformerrØ��NU
footnote_refsr∞��}r±��Urefnamesr≤��}r≥��h]r¥��hzasUsymbol_footnotesrµ��]r∂��Uautofootnote_refsr∑��]r∏��Usymbol_footnote_refsrπ��]r∫��U	citationsrª��]rº��h)hUcurrent_linerΩ��NUtransform_messagesræ��]rø��(cdocutils.nodes
system_message
r¿��)År¡��}r¬��(hU�h }r√��(h$]UlevelKh"]h#]Usourcehh%]h&]UlineKUtypeUINFOrƒ��uh]r≈��hp)År∆��}r«��(hU�h }r»��(h$]h%]h#]h"]h&]uhj¡��h]r…��h=X*���Hyperlink target "uc30" is not referenced.r ��ÖÅrÀ��}rÃ��(hU�hj∆��ubahhsubahUsystem_messagerÕ��ubj¿��)ÅrŒ��}rœ��(hU�h }r–��(h$]UlevelKh"]h#]Usourcehh%]h&]UlineKUtypejƒ��uh]r—��hp)År“��}r”��(hU�h }r‘��(h$]h%]h#]h"]h&]uhjŒ��h]r’��h=X-���Hyperlink target "index-0" is not referenced.r÷��ÖÅr◊��}rÿ��(hU�hj“��ubahhsubahjÕ��ubeUreporterrŸ��NUid_startr⁄��KU
autofootnotesr€��]r‹��U
citation_refsr›��}rfi��Uindirect_targetsrfl��]r‡��Usettingsr·��(cdocutils.frontend
Values
r‚��or„��}r‰��(Ufootnote_backlinksrÂ��KUrecord_dependenciesrÊ��NUrfc_base_urlrÁ��Uhttps://tools.ietf.org/html/rË��U	tracebackrÈ��àUpep_referencesrÍ��NUstrip_commentsrÎ��NU
toc_backlinksr��Uentryr��U
language_coderÓ��UenrÔ��U	datestampr��NUreport_levelrÒ��KU_destinationrÚ��NU
halt_levelr��KU
strip_classesrÙ��Nh:NUerror_encoding_error_handlerrı��Ubackslashreplacerˆ��Udebugr˜��NUembed_stylesheetr¯��âUoutput_encoding_error_handlerr˘��Ustrictr˙��U
sectnum_xformr˚��KUdump_transformsr¸��NU
docinfo_xformr˝��KUwarning_streamr˛��NUpep_file_url_templaterˇ��Upep-%04dr���Uexit_status_levelr��KUconfigr��NUstrict_visitorr��NUcloak_email_addressesr��àUtrim_footnote_reference_spacer��âUenvr��NUdump_pseudo_xmlr��NUexpose_internalsr��NUsectsubtitle_xformr	��âUsource_linkr
��NUrfc_referencesr��NUoutput_encodingr��Uutf-8r
��U
source_urlr��NUinput_encodingr��U	utf-8-sigr��U_disable_configr��NU	id_prefixr��U�U	tab_widthr��KUerror_encodingr��UUTF-8r��U_sourcer��hUgettext_compactr��àU	generatorr��NUdump_internalsr��NUsmart_quotesr��âUpep_base_urlr��U https://www.python.org/dev/peps/r��Usyntax_highlightr��Ulongr��Uinput_encoding_error_handlerr��j˙��Uauto_id_prefixr ��Uidr!��Udoctitle_xformr"��âUstrip_elements_with_classesr#��NU
_config_filesr$��]Ufile_insertion_enabledr%��àUraw_enabledr&��KU
dump_settingsr'��NubUsymbol_footnote_startr(��K�Uidsr)��}r*��(hh+hIhThh+hj©��uUsubstitution_namesr+��}r,��hh)h }r-��(h$]h"]h#]Usourcehh%]h&]uU	footnotesr.��]r/��Urefidsr0��}r1��(h]r2��hahI]r3��hPauub.