amps-python-client 5.3.4.1__zip → 5.3.4.2__zip

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (917) hide show
  1. amps-python-client-5.3.4.2/PKG-INFO +112 -0
  2. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/ack-messages.doctree +0 -0
  3. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/content-messages.doctree +0 -0
  4. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/intro.doctree +0 -0
  5. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/logon.doctree +0 -0
  6. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/protocol-reference.doctree +0 -0
  7. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/publishing.doctree +0 -0
  8. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/query-delimiters.doctree +0 -0
  9. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/query-subscribe.doctree +0 -0
  10. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/removing.doctree +0 -0
  11. amps-python-client-5.3.4.2/docs/command-reference/doctrees/chapters/utilities.doctree +0 -0
  12. amps-python-client-5.3.4.2/docs/command-reference/doctrees/environment.pickle +0 -0
  13. amps-python-client-5.3.4.2/docs/command-reference/doctrees/index.doctree +0 -0
  14. amps-python-client-5.3.4.2/docs/command-reference/html/.buildinfo +4 -0
  15. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/ack-messages.rst.txt +8 -0
  16. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/content-messages.rst.txt +8 -0
  17. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/intro.rst.txt +8 -0
  18. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/logon.rst.txt +8 -0
  19. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/protocol-reference.rst.txt +8 -0
  20. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/publishing.rst.txt +8 -0
  21. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/query-delimiters.rst.txt +8 -0
  22. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/query-subscribe.rst.txt +8 -0
  23. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/removing.rst.txt +8 -0
  24. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/chapters/utilities.rst.txt +8 -0
  25. amps-python-client-5.3.4.2/docs/command-reference/html/_sources/index.rst.txt +36 -0
  26. amps-python-client-5.3.4.2/docs/command-reference/html/_static/custom.css +161 -0
  27. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/ack-messages.html +95 -0
  28. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/content-messages.html +95 -0
  29. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/intro.html +95 -0
  30. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/logon.html +95 -0
  31. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/protocol-reference.html +93 -0
  32. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/publishing.html +95 -0
  33. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/query-delimiters.html +95 -0
  34. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/query-subscribe.html +95 -0
  35. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/removing.html +95 -0
  36. amps-python-client-5.3.4.2/docs/command-reference/html/chapters/utilities.html +95 -0
  37. amps-python-client-5.3.4.2/docs/command-reference/html/genindex.html +97 -0
  38. amps-python-client-5.3.4.2/docs/command-reference/html/index.html +98 -0
  39. amps-python-client-5.3.4.2/docs/command-reference/html/objects.inv +6 -0
  40. amps-python-client-5.3.4.2/docs/command-reference/html/search.html +107 -0
  41. amps-python-client-5.3.4.2/docs/command-reference/html/searchindex.js +1 -0
  42. amps-python-client-5.3.4.2/docs/html/.buildinfo +4 -0
  43. amps-python-client-5.3.4.2/docs/html/code.html +6616 -0
  44. amps-python-client-5.3.4.2/docs/html/genindex.html +1363 -0
  45. amps-python-client-5.3.4.2/docs/html/index.html +131 -0
  46. amps-python-client-5.3.4.2/docs/html/objects.inv +0 -0
  47. amps-python-client-5.3.4.2/docs/html/py-modindex.html +111 -0
  48. amps-python-client-5.3.4.2/docs/html/search.html +107 -0
  49. amps-python-client-5.3.4.2/docs/html/searchindex.js +1 -0
  50. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/advanced-topics.doctree +0 -0
  51. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/cpp-compiler-list.doctree +0 -0
  52. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/cpp-feature-table.doctree +0 -0
  53. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/creating-commands.doctree +0 -0
  54. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/deltas.doctree +0 -0
  55. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/error-handling.doctree +0 -0
  56. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/exceptions.doctree +0 -0
  57. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/first-program.doctree +0 -0
  58. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/high-availability.doctree +0 -0
  59. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/installing.doctree +0 -0
  60. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/introduction.doctree +0 -0
  61. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/moving-from-python-lite.doctree +0 -0
  62. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/performance-tips.doctree +0 -0
  63. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/queues.doctree +0 -0
  64. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/sow.doctree +0 -0
  65. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/subscriptions.doctree +0 -0
  66. amps-python-client-5.3.4.2/docs/python/doctrees/chapters/utilities.doctree +0 -0
  67. amps-python-client-5.3.4.2/docs/python/doctrees/environment.pickle +0 -0
  68. amps-python-client-5.3.4.2/docs/python/doctrees/index.doctree +0 -0
  69. amps-python-client-5.3.4.2/docs/python/html/.buildinfo +4 -0
  70. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/advanced-topics.rst.txt +398 -0
  71. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/cpp-feature-table.rst.txt +26 -0
  72. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/creating-commands.rst.txt +159 -0
  73. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/deltas.rst.txt +79 -0
  74. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/error-handling.rst.txt +481 -0
  75. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/exceptions.rst.txt +123 -0
  76. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/first-program.rst.txt +168 -0
  77. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/high-availability.rst.txt +879 -0
  78. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/installing.rst.txt +184 -0
  79. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/introduction.rst.txt +50 -0
  80. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/moving-from-python-lite.rst.txt +32 -0
  81. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/performance-tips.rst.txt +432 -0
  82. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/queues.rst.txt +282 -0
  83. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/sow.rst.txt +294 -0
  84. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/subscriptions.rst.txt +374 -0
  85. amps-python-client-5.3.4.2/docs/python/html/_sources/chapters/utilities.rst.txt +214 -0
  86. amps-python-client-5.3.4.2/docs/python/html/_static/custom.css +161 -0
  87. amps-python-client-5.3.4.2/docs/python/html/chapters/advanced-topics.html +447 -0
  88. amps-python-client-5.3.4.2/docs/python/html/chapters/cpp-compiler-list.html +92 -0
  89. amps-python-client-5.3.4.2/docs/python/html/chapters/cpp-feature-table.html +156 -0
  90. amps-python-client-5.3.4.2/docs/python/html/chapters/creating-commands.html +2882 -0
  91. amps-python-client-5.3.4.2/docs/python/html/chapters/deltas.html +169 -0
  92. amps-python-client-5.3.4.2/docs/python/html/chapters/error-handling.html +745 -0
  93. amps-python-client-5.3.4.2/docs/python/html/chapters/exceptions.html +266 -0
  94. amps-python-client-5.3.4.2/docs/python/html/chapters/first-program.html +526 -0
  95. amps-python-client-5.3.4.2/docs/python/html/chapters/high-availability.html +1017 -0
  96. amps-python-client-5.3.4.2/docs/python/html/chapters/installing.html +264 -0
  97. amps-python-client-5.3.4.2/docs/python/html/chapters/introduction.html +245 -0
  98. amps-python-client-5.3.4.2/docs/python/html/chapters/moving-from-python-lite.html +118 -0
  99. amps-python-client-5.3.4.2/docs/python/html/chapters/performance-tips.html +499 -0
  100. amps-python-client-5.3.4.2/docs/python/html/chapters/queues.html +352 -0
  101. amps-python-client-5.3.4.2/docs/python/html/chapters/sow.html +383 -0
  102. amps-python-client-5.3.4.2/docs/python/html/chapters/subscriptions.html +535 -0
  103. amps-python-client-5.3.4.2/docs/python/html/chapters/utilities.html +302 -0
  104. amps-python-client-5.3.4.2/docs/python/html/genindex.html +351 -0
  105. amps-python-client-5.3.4.2/docs/python/html/index.html +382 -0
  106. amps-python-client-5.3.4.2/docs/python/html/objects.inv +0 -0
  107. amps-python-client-5.3.4.2/docs/python/html/search.html +107 -0
  108. amps-python-client-5.3.4.2/docs/python/html/searchindex.js +1 -0
  109. amps-python-client-5.3.4.2/docs/python-quickstart/doctrees/chapters/crankitup.doctree +0 -0
  110. amps-python-client-5.3.4.2/docs/python-quickstart/doctrees/chapters/equipment.doctree +0 -0
  111. amps-python-client-5.3.4.2/docs/python-quickstart/doctrees/environment.pickle +0 -0
  112. amps-python-client-5.3.4.2/docs/python-quickstart/doctrees/index.doctree +0 -0
  113. amps-python-client-5.3.4.2/docs/python-quickstart/html/.buildinfo +4 -0
  114. amps-python-client-5.3.4.2/docs/python-quickstart/html/_static/custom.css +161 -0
  115. amps-python-client-5.3.4.2/docs/python-quickstart/html/chapters/crankitup.html +271 -0
  116. amps-python-client-5.3.4.2/docs/python-quickstart/html/chapters/equipment.html +105 -0
  117. amps-python-client-5.3.4.2/docs/python-quickstart/html/genindex.html +97 -0
  118. amps-python-client-5.3.4.2/docs/python-quickstart/html/index.html +381 -0
  119. amps-python-client-5.3.4.2/docs/python-quickstart/html/objects.inv +0 -0
  120. amps-python-client-5.3.4.2/docs/python-quickstart/html/search.html +107 -0
  121. amps-python-client-5.3.4.2/docs/python-quickstart/html/searchindex.js +1 -0
  122. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/acks.doctree +0 -0
  123. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/actions.doctree +0 -0
  124. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/amps-statistics.doctree +0 -0
  125. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/amps_expressions.doctree +0 -0
  126. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/amps_functions.doctree +0 -0
  127. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/auxiliary_modules.doctree +0 -0
  128. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/config-file-shortcuts.doctree +0 -0
  129. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/conflated_topics.doctree +0 -0
  130. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/constructing-fields.doctree +0 -0
  131. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/daemon.doctree +0 -0
  132. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/delta.doctree +0 -0
  133. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/distribution.doctree +0 -0
  134. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/enrichment.doctree +0 -0
  135. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/events.doctree +0 -0
  136. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/file_format_versions.doctree +0 -0
  137. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/glossary.doctree +0 -0
  138. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/ha.doctree +0 -0
  139. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/installing_and_starting.doctree +0 -0
  140. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/intro.doctree +0 -0
  141. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/logging.doctree +0 -0
  142. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/messageTypes.doctree +0 -0
  143. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/monitoring.doctree +0 -0
  144. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/oof.doctree +0 -0
  145. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/operation.doctree +0 -0
  146. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/pub_sub.doctree +0 -0
  147. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/queues.doctree +0 -0
  148. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/replication.doctree +0 -0
  149. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/securing.doctree +0 -0
  150. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/sow.doctree +0 -0
  151. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/sow_queries.doctree +0 -0
  152. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/spark.doctree +0 -0
  153. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/transports.doctree +0 -0
  154. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/troubleshooting.doctree +0 -0
  155. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/txlog.doctree +0 -0
  156. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/usecases.doctree +0 -0
  157. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/utilities.doctree +0 -0
  158. amps-python-client-5.3.4.2/docs/user-guide/doctrees/chapters/views.doctree +0 -0
  159. amps-python-client-5.3.4.2/docs/user-guide/doctrees/environment.pickle +0 -0
  160. amps-python-client-5.3.4.2/docs/user-guide/doctrees/index.doctree +0 -0
  161. amps-python-client-5.3.4.2/docs/user-guide/html/.buildinfo +4 -0
  162. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/acks.rst.txt +8 -0
  163. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/actions.rst.txt +8 -0
  164. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/amps-statistics.rst.txt +8 -0
  165. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/amps_expressions.rst.txt +8 -0
  166. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/amps_functions.rst.txt +8 -0
  167. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/auxiliary_modules.rst.txt +8 -0
  168. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/config-file-shortcuts.rst.txt +8 -0
  169. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/conflated_topics.rst.txt +8 -0
  170. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/constructing-fields.rst.txt +8 -0
  171. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/daemon.rst.txt +8 -0
  172. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/delta.rst.txt +8 -0
  173. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/distribution.rst.txt +8 -0
  174. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/enrichment.rst.txt +8 -0
  175. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/events.rst.txt +8 -0
  176. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/file_format_versions.rst.txt +8 -0
  177. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/glossary.rst.txt +8 -0
  178. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/ha.rst.txt +8 -0
  179. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/installing_and_starting.rst.txt +8 -0
  180. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/intro.rst.txt +8 -0
  181. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/logging.rst.txt +8 -0
  182. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/messageTypes.rst.txt +8 -0
  183. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/monitoring.rst.txt +8 -0
  184. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/oof.rst.txt +8 -0
  185. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/operation.rst.txt +8 -0
  186. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/pub_sub.rst.txt +8 -0
  187. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/queues.rst.txt +8 -0
  188. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/replication.rst.txt +8 -0
  189. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/securing.rst.txt +8 -0
  190. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/sow.rst.txt +8 -0
  191. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/sow_queries.rst.txt +8 -0
  192. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/transports.rst.txt +8 -0
  193. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/troubleshooting.rst.txt +8 -0
  194. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/txlog.rst.txt +8 -0
  195. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/usecases.rst.txt +8 -0
  196. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/utilities.rst.txt +8 -0
  197. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/chapters/views.rst.txt +8 -0
  198. amps-python-client-5.3.4.2/docs/user-guide/html/_sources/index.rst.txt +62 -0
  199. amps-python-client-5.3.4.2/docs/user-guide/html/_static/custom.css +161 -0
  200. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/acks.html +94 -0
  201. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/actions.html +94 -0
  202. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/amps-statistics.html +94 -0
  203. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/amps_expressions.html +94 -0
  204. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/amps_functions.html +94 -0
  205. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/auxiliary_modules.html +94 -0
  206. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/config-file-shortcuts.html +94 -0
  207. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/conflated_topics.html +94 -0
  208. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/constructing-fields.html +94 -0
  209. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/daemon.html +94 -0
  210. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/delta.html +94 -0
  211. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/distribution.html +94 -0
  212. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/enrichment.html +94 -0
  213. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/events.html +94 -0
  214. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/file_format_versions.html +94 -0
  215. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/glossary.html +92 -0
  216. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/ha.html +94 -0
  217. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/installing_and_starting.html +94 -0
  218. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/intro.html +94 -0
  219. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/logging.html +94 -0
  220. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/messageTypes.html +94 -0
  221. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/monitoring.html +94 -0
  222. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/oof.html +94 -0
  223. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/operation.html +94 -0
  224. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/pub_sub.html +94 -0
  225. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/queues.html +94 -0
  226. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/replication.html +94 -0
  227. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/securing.html +94 -0
  228. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/sow.html +94 -0
  229. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/sow_queries.html +94 -0
  230. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/spark.html +819 -0
  231. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/transports.html +94 -0
  232. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/troubleshooting.html +94 -0
  233. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/txlog.html +94 -0
  234. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/usecases.html +94 -0
  235. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/utilities.html +94 -0
  236. amps-python-client-5.3.4.2/docs/user-guide/html/chapters/views.html +94 -0
  237. amps-python-client-5.3.4.2/docs/user-guide/html/genindex.html +133 -0
  238. amps-python-client-5.3.4.2/docs/user-guide/html/index.html +96 -0
  239. amps-python-client-5.3.4.2/docs/user-guide/html/objects.inv +0 -0
  240. amps-python-client-5.3.4.2/docs/user-guide/html/search.html +106 -0
  241. amps-python-client-5.3.4.2/docs/user-guide/html/searchindex.js +1 -0
  242. amps-python-client-5.3.4.2/include/ampspy_bookmarkstore.hpp +63 -0
  243. amps-python-client-5.3.4.2/include/ampspy_compat.h +63 -0
  244. amps-python-client-5.3.4.2/include/ampspy_defs.hpp +181 -0
  245. amps-python-client-5.3.4.2/include/ampspy_recoverypointadapter.hpp +52 -0
  246. amps-python-client-5.3.4.2/include/ampspy_shims.hpp +113 -0
  247. amps-python-client-5.3.4.2/include/ampspy_type_object.hpp +242 -0
  248. amps-python-client-5.3.4.2/include/ampspy_types.hpp +1139 -0
  249. amps-python-client-5.3.4.2/include/ampspyver.h +30 -0
  250. amps-python-client-5.3.4.2/index.html +66 -0
  251. amps-python-client-5.3.4.2/samples/AMPSConsolePublisher.py +59 -0
  252. amps-python-client-5.3.4.2/samples/AMPSConsoleSubscriber.py +63 -0
  253. amps-python-client-5.3.4.2/samples/AMPSFIXBuilderPublisher.py +71 -0
  254. amps-python-client-5.3.4.2/samples/AMPSFIXShredderSubscriber.py +69 -0
  255. amps-python-client-5.3.4.2/samples/AMPSNVFIXBuilderPublisher.py +71 -0
  256. amps-python-client-5.3.4.2/samples/AMPSNVFIXShredderSubscriber.py +67 -0
  257. amps-python-client-5.3.4.2/samples/AMPSPublishForReplay.py +81 -0
  258. amps-python-client-5.3.4.2/samples/AMPSQueueConsumer.py +69 -0
  259. amps-python-client-5.3.4.2/samples/AMPSQueuePublisher.py +59 -0
  260. amps-python-client-5.3.4.2/samples/AMPSSOWConsolePublisher.py +67 -0
  261. amps-python-client-5.3.4.2/samples/AMPSSOWConsoleSubscriber.py +77 -0
  262. amps-python-client-5.3.4.2/samples/AMPSSOWandSubscribeConsoleSubscriber.py +79 -0
  263. amps-python-client-5.3.4.2/samples/AMPSSOWandSubscribeWithOOF.py +108 -0
  264. amps-python-client-5.3.4.2/samples/AMPSSubscribeForReplay.py +128 -0
  265. amps-python-client-5.3.4.2/samples/AMPSUpdateForOOF.py +123 -0
  266. amps-python-client-5.3.4.2/samples/CompositeMessagePublisher.py +84 -0
  267. amps-python-client-5.3.4.2/samples/CompositeMessageSubscriber.py +87 -0
  268. amps-python-client-5.3.4.2/samples/RandomServerChooser.py +66 -0
  269. amps-python-client-5.3.4.2/samples/sample.xml +335 -0
  270. amps-python-client-5.3.4.2/setup.py +210 -0
  271. amps-python-client-5.3.4.2/setup_amps.py +94 -0
  272. amps-python-client-5.3.4.2/src/ampspy_shims.cpp +214 -0
  273. amps-python-client-5.3.4.2/src/ampspy_type_object.cpp +495 -0
  274. amps-python-client-5.3.4.2/src/authenticator.cpp +128 -0
  275. amps-python-client-5.3.4.2/src/bookmarkstore.cpp +246 -0
  276. amps-python-client-5.3.4.2/src/client.cpp +2648 -0
  277. amps-python-client-5.3.4.2/src/client_docs.h +956 -0
  278. amps-python-client-5.3.4.2/src/cmessagehandler.cpp +161 -0
  279. amps-python-client-5.3.4.2/src/command.cpp +164 -0
  280. amps-python-client-5.3.4.2/src/command_docs.h +269 -0
  281. amps-python-client-5.3.4.2/src/compositemessagebuilder.cpp +113 -0
  282. amps-python-client-5.3.4.2/src/compositemessageparser.cpp +151 -0
  283. amps-python-client-5.3.4.2/src/conflatingrecoverypointadapter.cpp +197 -0
  284. amps-python-client-5.3.4.2/src/cpp/include/amps/BlockPublishStore.hpp +2053 -0
  285. amps-python-client-5.3.4.2/src/cpp/include/amps/BlockStore.hpp +677 -0
  286. amps-python-client-5.3.4.2/src/cpp/include/amps/BookmarkStore.hpp +542 -0
  287. amps-python-client-5.3.4.2/src/cpp/include/amps/Buffer.hpp +214 -0
  288. amps-python-client-5.3.4.2/src/cpp/include/amps/CompositeMessageBuilder.hpp +174 -0
  289. amps-python-client-5.3.4.2/src/cpp/include/amps/CompositeMessageParser.hpp +151 -0
  290. amps-python-client-5.3.4.2/src/cpp/include/amps/DefaultServerChooser.hpp +162 -0
  291. amps-python-client-5.3.4.2/src/cpp/include/amps/Field.hpp +719 -0
  292. amps-python-client-5.3.4.2/src/cpp/include/amps/HAClient.hpp +370 -0
  293. amps-python-client-5.3.4.2/src/cpp/include/amps/HAClientImpl.hpp +460 -0
  294. amps-python-client-5.3.4.2/src/cpp/include/amps/HybridPublishStore.hpp +481 -0
  295. amps-python-client-5.3.4.2/src/cpp/include/amps/LoggedBookmarkStore.hpp +1256 -0
  296. amps-python-client-5.3.4.2/src/cpp/include/amps/MMapBookmarkStore.hpp +1283 -0
  297. amps-python-client-5.3.4.2/src/cpp/include/amps/MMapStoreBuffer.hpp +290 -0
  298. amps-python-client-5.3.4.2/src/cpp/include/amps/MemoryBookmarkStore.hpp +1628 -0
  299. amps-python-client-5.3.4.2/src/cpp/include/amps/MemoryPublishStore.hpp +66 -0
  300. amps-python-client-5.3.4.2/src/cpp/include/amps/MemoryStoreBuffer.hpp +244 -0
  301. amps-python-client-5.3.4.2/src/cpp/include/amps/MemorySubscriptionManager.hpp +850 -0
  302. amps-python-client-5.3.4.2/src/cpp/include/amps/Message.hpp +1819 -0
  303. amps-python-client-5.3.4.2/src/cpp/include/amps/MessageRouter.hpp +647 -0
  304. amps-python-client-5.3.4.2/src/cpp/include/amps/PublishStore.hpp +158 -0
  305. amps-python-client-5.3.4.2/src/cpp/include/amps/ReconnectDelayStrategy.hpp +106 -0
  306. amps-python-client-5.3.4.2/src/cpp/include/amps/ReconnectDelayStrategyImpl.hpp +317 -0
  307. amps-python-client-5.3.4.2/src/cpp/include/amps/RecoveryPoint.hpp +323 -0
  308. amps-python-client-5.3.4.2/src/cpp/include/amps/RecoveryPointAdapter.hpp +501 -0
  309. amps-python-client-5.3.4.2/src/cpp/include/amps/RingBookmarkStore.hpp +669 -0
  310. amps-python-client-5.3.4.2/src/cpp/include/amps/SOWRecoveryPointAdapter.hpp +494 -0
  311. amps-python-client-5.3.4.2/src/cpp/include/amps/ServerChooser.hpp +145 -0
  312. amps-python-client-5.3.4.2/src/cpp/include/amps/ServerChooserImpl.hpp +95 -0
  313. amps-python-client-5.3.4.2/src/cpp/include/amps/amps.h +803 -0
  314. amps-python-client-5.3.4.2/src/cpp/include/amps/amps_impl.h +208 -0
  315. amps-python-client-5.3.4.2/src/cpp/include/amps/amps_ssl.h +78 -0
  316. amps-python-client-5.3.4.2/src/cpp/include/amps/ampscrc.hpp +210 -0
  317. amps-python-client-5.3.4.2/src/cpp/include/amps/ampsplusplus.hpp +8850 -0
  318. amps-python-client-5.3.4.2/src/cpp/include/amps/ampsuri.h +84 -0
  319. amps-python-client-5.3.4.2/src/cpp/include/amps/ampsver.h +41 -0
  320. amps-python-client-5.3.4.2/src/cpp/include/amps/ampsver.h.in +41 -0
  321. amps-python-client-5.3.4.2/src/cpp/include/amps/constants.hpp +194 -0
  322. amps-python-client-5.3.4.2/src/cpp/include/amps/util.hpp +1722 -0
  323. amps-python-client-5.3.4.2/src/cpp/src/amps_protocol.c +693 -0
  324. amps-python-client-5.3.4.2/src/cpp/src/amps_ssl.c +489 -0
  325. amps-python-client-5.3.4.2/src/cpp/src/atfork.c +451 -0
  326. amps-python-client-5.3.4.2/src/cpp/src/client.c +498 -0
  327. amps-python-client-5.3.4.2/src/cpp/src/message.c +837 -0
  328. amps-python-client-5.3.4.2/src/cpp/src/message_generated.h +611 -0
  329. amps-python-client-5.3.4.2/src/cpp/src/tcp.c +1517 -0
  330. amps-python-client-5.3.4.2/src/cpp/src/tcps.c +1885 -0
  331. amps-python-client-5.3.4.2/src/cpp/src/transports.c +129 -0
  332. amps-python-client-5.3.4.2/src/cpp/src/unix.c +1002 -0
  333. amps-python-client-5.3.4.2/src/cpp/src/uri.c +301 -0
  334. amps-python-client-5.3.4.2/src/exponentialdelaystrategy.cpp +137 -0
  335. amps-python-client-5.3.4.2/src/failedwritehandler.cpp +116 -0
  336. amps-python-client-5.3.4.2/src/fixbuilder.cpp +146 -0
  337. amps-python-client-5.3.4.2/src/fixeddelaystrategy.cpp +114 -0
  338. amps-python-client-5.3.4.2/src/fixshredder.cpp +105 -0
  339. amps-python-client-5.3.4.2/src/fixshredder_docs.h +38 -0
  340. amps-python-client-5.3.4.2/src/haclient.cpp +691 -0
  341. amps-python-client-5.3.4.2/src/haclient_docs.h +186 -0
  342. amps-python-client-5.3.4.2/src/hybridpublishstore.cpp +137 -0
  343. amps-python-client-5.3.4.2/src/hybridpublishstore_docs.h +31 -0
  344. amps-python-client-5.3.4.2/src/memorybookmarkstore.cpp +373 -0
  345. amps-python-client-5.3.4.2/src/memorybookmarkstore_docs.h +39 -0
  346. amps-python-client-5.3.4.2/src/memorypublishstore.cpp +160 -0
  347. amps-python-client-5.3.4.2/src/memorypublishstore_docs.h +32 -0
  348. amps-python-client-5.3.4.2/src/message.cpp +765 -0
  349. amps-python-client-5.3.4.2/src/message_docs.h +306 -0
  350. amps-python-client-5.3.4.2/src/messagestream.cpp +630 -0
  351. amps-python-client-5.3.4.2/src/messagestream_docs.h +45 -0
  352. amps-python-client-5.3.4.2/src/mmapbookmarkstore.cpp +422 -0
  353. amps-python-client-5.3.4.2/src/nvfixbuilder.cpp +160 -0
  354. amps-python-client-5.3.4.2/src/nvfixbuilder_docs.h +35 -0
  355. amps-python-client-5.3.4.2/src/nvfixshredder.cpp +99 -0
  356. amps-python-client-5.3.4.2/src/nvfixshredder_docs.h +43 -0
  357. amps-python-client-5.3.4.2/src/publishstore.cpp +183 -0
  358. amps-python-client-5.3.4.2/src/raw_wrapper.cpp +765 -0
  359. amps-python-client-5.3.4.2/src/reason.cpp +71 -0
  360. amps-python-client-5.3.4.2/src/recoverypoint.cpp +135 -0
  361. amps-python-client-5.3.4.2/src/recoverypointadapter.cpp +171 -0
  362. amps-python-client-5.3.4.2/src/ringbookmarkstore.cpp +360 -0
  363. amps-python-client-5.3.4.2/src/serverchooser.cpp +245 -0
  364. amps-python-client-5.3.4.2/src/serverchooser_docs.h +41 -0
  365. amps-python-client-5.3.4.2/src/sowrecoverypointadapter.cpp +248 -0
  366. amps-python-client-5.3.4.2/src/store.cpp +62 -0
  367. amps-python-client-5.3.4.2/src/versioninfo.cpp +175 -0
  368. amps-python-client-5.3.4.1/PKG-INFO +0 -112
  369. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/ack-messages.doctree +0 -0
  370. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/content-messages.doctree +0 -0
  371. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/intro.doctree +0 -0
  372. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/logon.doctree +0 -0
  373. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/protocol-reference.doctree +0 -0
  374. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/publishing.doctree +0 -0
  375. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/query-delimiters.doctree +0 -0
  376. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/query-subscribe.doctree +0 -0
  377. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/removing.doctree +0 -0
  378. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/utilities.doctree +0 -0
  379. amps-python-client-5.3.4.1/docs/command-reference/doctrees/environment.pickle +0 -0
  380. amps-python-client-5.3.4.1/docs/command-reference/doctrees/index.doctree +0 -0
  381. amps-python-client-5.3.4.1/docs/command-reference/html/.buildinfo +0 -4
  382. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/ack-messages.rst.txt +0 -32
  383. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/content-messages.rst.txt +0 -27
  384. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/intro.rst.txt +0 -43
  385. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/logon.rst.txt +0 -231
  386. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/protocol-reference.rst.txt +0 -1474
  387. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/publishing.rst.txt +0 -25
  388. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/query-delimiters.rst.txt +0 -12
  389. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/query-subscribe.rst.txt +0 -23
  390. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/removing.rst.txt +0 -6
  391. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/utilities.rst.txt +0 -13
  392. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/index.rst.txt +0 -56
  393. amps-python-client-5.3.4.1/docs/command-reference/html/_static/custom.css +0 -192
  394. amps-python-client-5.3.4.1/docs/command-reference/html/_static/custom.css.backup +0 -161
  395. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/ack-messages.html +0 -417
  396. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/content-messages.html +0 -417
  397. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/intro.html +0 -126
  398. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/logon.html +0 -295
  399. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/protocol-reference.html +0 -1190
  400. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/publishing.html +0 -436
  401. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/query-delimiters.html +0 -173
  402. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/query-subscribe.html +0 -2123
  403. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/removing.html +0 -299
  404. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/utilities.html +0 -287
  405. amps-python-client-5.3.4.1/docs/command-reference/html/genindex.html +0 -97
  406. amps-python-client-5.3.4.1/docs/command-reference/html/index.html +0 -138
  407. amps-python-client-5.3.4.1/docs/command-reference/html/objects.inv +0 -0
  408. amps-python-client-5.3.4.1/docs/command-reference/html/search.html +0 -107
  409. amps-python-client-5.3.4.1/docs/command-reference/html/searchindex.js +0 -1
  410. amps-python-client-5.3.4.1/docs/html/.buildinfo +0 -4
  411. amps-python-client-5.3.4.1/docs/html/code.html +0 -6503
  412. amps-python-client-5.3.4.1/docs/html/genindex.html +0 -1361
  413. amps-python-client-5.3.4.1/docs/html/index.html +0 -131
  414. amps-python-client-5.3.4.1/docs/html/objects.inv +0 -0
  415. amps-python-client-5.3.4.1/docs/html/py-modindex.html +0 -111
  416. amps-python-client-5.3.4.1/docs/html/search.html +0 -107
  417. amps-python-client-5.3.4.1/docs/html/searchindex.js +0 -1
  418. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/advanced-topics.doctree +0 -0
  419. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/cpp-compiler-list.doctree +0 -0
  420. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/cpp-feature-table.doctree +0 -0
  421. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/creating-commands.doctree +0 -0
  422. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/deltas.doctree +0 -0
  423. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/error-handling.doctree +0 -0
  424. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/exceptions.doctree +0 -0
  425. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/first-program.doctree +0 -0
  426. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/high-availability.doctree +0 -0
  427. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/installing.doctree +0 -0
  428. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/introduction.doctree +0 -0
  429. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/moving-from-python-lite.doctree +0 -0
  430. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/performance-tips.doctree +0 -0
  431. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/queues.doctree +0 -0
  432. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/sow.doctree +0 -0
  433. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/subscriptions.doctree +0 -0
  434. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/utilities.doctree +0 -0
  435. amps-python-client-5.3.4.1/docs/python/doctrees/environment.pickle +0 -0
  436. amps-python-client-5.3.4.1/docs/python/doctrees/index.doctree +0 -0
  437. amps-python-client-5.3.4.1/docs/python/html/.buildinfo +0 -4
  438. amps-python-client-5.3.4.1/docs/python/html/_images/caution.svg +0 -25
  439. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/advanced-topics.rst.txt +0 -398
  440. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/cpp-feature-table.rst.txt +0 -26
  441. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/creating-commands.rst.txt +0 -159
  442. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/deltas.rst.txt +0 -79
  443. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/error-handling.rst.txt +0 -482
  444. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/exceptions.rst.txt +0 -128
  445. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/first-program.rst.txt +0 -142
  446. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/high-availability.rst.txt +0 -876
  447. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/installing.rst.txt +0 -184
  448. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/introduction.rst.txt +0 -50
  449. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/moving-from-python-lite.rst.txt +0 -32
  450. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/performance-tips.rst.txt +0 -434
  451. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/queues.rst.txt +0 -282
  452. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/sow.rst.txt +0 -292
  453. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/subscriptions.rst.txt +0 -374
  454. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/utilities.rst.txt +0 -214
  455. amps-python-client-5.3.4.1/docs/python/html/_static/custom.css +0 -192
  456. amps-python-client-5.3.4.1/docs/python/html/_static/custom.css.backup +0 -161
  457. amps-python-client-5.3.4.1/docs/python/html/chapters/advanced-topics.html +0 -447
  458. amps-python-client-5.3.4.1/docs/python/html/chapters/cpp-compiler-list.html +0 -92
  459. amps-python-client-5.3.4.1/docs/python/html/chapters/cpp-feature-table.html +0 -156
  460. amps-python-client-5.3.4.1/docs/python/html/chapters/creating-commands.html +0 -2837
  461. amps-python-client-5.3.4.1/docs/python/html/chapters/deltas.html +0 -169
  462. amps-python-client-5.3.4.1/docs/python/html/chapters/error-handling.html +0 -746
  463. amps-python-client-5.3.4.1/docs/python/html/chapters/exceptions.html +0 -272
  464. amps-python-client-5.3.4.1/docs/python/html/chapters/first-program.html +0 -499
  465. amps-python-client-5.3.4.1/docs/python/html/chapters/high-availability.html +0 -1014
  466. amps-python-client-5.3.4.1/docs/python/html/chapters/installing.html +0 -264
  467. amps-python-client-5.3.4.1/docs/python/html/chapters/introduction.html +0 -245
  468. amps-python-client-5.3.4.1/docs/python/html/chapters/moving-from-python-lite.html +0 -118
  469. amps-python-client-5.3.4.1/docs/python/html/chapters/performance-tips.html +0 -499
  470. amps-python-client-5.3.4.1/docs/python/html/chapters/queues.html +0 -352
  471. amps-python-client-5.3.4.1/docs/python/html/chapters/sow.html +0 -381
  472. amps-python-client-5.3.4.1/docs/python/html/chapters/subscriptions.html +0 -535
  473. amps-python-client-5.3.4.1/docs/python/html/chapters/utilities.html +0 -302
  474. amps-python-client-5.3.4.1/docs/python/html/genindex.html +0 -351
  475. amps-python-client-5.3.4.1/docs/python/html/index.html +0 -380
  476. amps-python-client-5.3.4.1/docs/python/html/objects.inv +0 -0
  477. amps-python-client-5.3.4.1/docs/python/html/search.html +0 -107
  478. amps-python-client-5.3.4.1/docs/python/html/searchindex.js +0 -1
  479. amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/chapters/crankitup.doctree +0 -0
  480. amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/chapters/equipment.doctree +0 -0
  481. amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/environment.pickle +0 -0
  482. amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/index.doctree +0 -0
  483. amps-python-client-5.3.4.1/docs/python-quickstart/html/.buildinfo +0 -4
  484. amps-python-client-5.3.4.1/docs/python-quickstart/html/_static/custom.css +0 -192
  485. amps-python-client-5.3.4.1/docs/python-quickstart/html/_static/custom.css.backup +0 -161
  486. amps-python-client-5.3.4.1/docs/python-quickstart/html/chapters/crankitup.html +0 -271
  487. amps-python-client-5.3.4.1/docs/python-quickstart/html/chapters/equipment.html +0 -105
  488. amps-python-client-5.3.4.1/docs/python-quickstart/html/genindex.html +0 -97
  489. amps-python-client-5.3.4.1/docs/python-quickstart/html/index.html +0 -382
  490. amps-python-client-5.3.4.1/docs/python-quickstart/html/objects.inv +0 -0
  491. amps-python-client-5.3.4.1/docs/python-quickstart/html/search.html +0 -107
  492. amps-python-client-5.3.4.1/docs/python-quickstart/html/searchindex.js +0 -1
  493. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/acks.doctree +0 -0
  494. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/actions.doctree +0 -0
  495. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps-statistics.doctree +0 -0
  496. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps_expressions.doctree +0 -0
  497. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps_functions.doctree +0 -0
  498. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/auxiliary_modules.doctree +0 -0
  499. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/config-file-shortcuts.doctree +0 -0
  500. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/conflated_topics.doctree +0 -0
  501. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/constructing-fields.doctree +0 -0
  502. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/daemon.doctree +0 -0
  503. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/delta.doctree +0 -0
  504. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/distribution.doctree +0 -0
  505. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/enrichment.doctree +0 -0
  506. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/events.doctree +0 -0
  507. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/file_format_versions.doctree +0 -0
  508. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/glossary.doctree +0 -0
  509. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/ha.doctree +0 -0
  510. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/installing_and_starting.doctree +0 -0
  511. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/intro.doctree +0 -0
  512. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/logging.doctree +0 -0
  513. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/messageTypes.doctree +0 -0
  514. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/monitoring.doctree +0 -0
  515. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/oof.doctree +0 -0
  516. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/operation.doctree +0 -0
  517. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/pub_sub.doctree +0 -0
  518. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/queues.doctree +0 -0
  519. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/replication.doctree +0 -0
  520. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/securing.doctree +0 -0
  521. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/sow.doctree +0 -0
  522. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/sow_queries.doctree +0 -0
  523. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/spark.doctree +0 -0
  524. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/transports.doctree +0 -0
  525. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/troubleshooting.doctree +0 -0
  526. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/txlog.doctree +0 -0
  527. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/usecases.doctree +0 -0
  528. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/utilities.doctree +0 -0
  529. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/views.doctree +0 -0
  530. amps-python-client-5.3.4.1/docs/user-guide/doctrees/environment.pickle +0 -0
  531. amps-python-client-5.3.4.1/docs/user-guide/doctrees/index.doctree +0 -0
  532. amps-python-client-5.3.4.1/docs/user-guide/html/.buildinfo +0 -4
  533. amps-python-client-5.3.4.1/docs/user-guide/html/_images/AMPS-Queues-Intro.svg +0 -1330
  534. amps-python-client-5.3.4.1/docs/user-guide/html/_images/GeoRepl.png +0 -0
  535. amps-python-client-5.3.4.1/docs/user-guide/html/_images/HA_async_ack.png +0 -0
  536. amps-python-client-5.3.4.1/docs/user-guide/html/_images/HA_sync_ack.png +0 -0
  537. amps-python-client-5.3.4.1/docs/user-guide/html/_images/Hot-Hot-Replication.png +0 -0
  538. amps-python-client-5.3.4.1/docs/user-guide/html/_images/MessageOrdering.svg +0 -235
  539. amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF5.png +0 -0
  540. amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF6.png +0 -0
  541. amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF7.png +0 -0
  542. amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF8.png +0 -0
  543. amps-python-client-5.3.4.1/docs/user-guide/html/_images/PubSub1.svg +0 -1
  544. amps-python-client-5.3.4.1/docs/user-guide/html/_images/PubSub2.svg +0 -1
  545. amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWAndSubscribeAndReplace.svg +0 -684
  546. amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWQuery1.svg +0 -402
  547. amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWQuery2.svg +0 -505
  548. amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig1.svg +0 -1
  549. amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig2.svg +0 -1
  550. amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig3.svg +0 -1
  551. amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig4.svg +0 -1
  552. amps-python-client-5.3.4.1/docs/user-guide/html/_images/caution.png +0 -0
  553. amps-python-client-5.3.4.1/docs/user-guide/html/_images/caution.svg +0 -25
  554. amps-python-client-5.3.4.1/docs/user-guide/html/_images/chicago_group.png +0 -0
  555. amps-python-client-5.3.4.1/docs/user-guide/html/_images/delta_original_messages.png +0 -0
  556. amps-python-client-5.3.4.1/docs/user-guide/html/_images/delta_update_message.png +0 -0
  557. amps-python-client-5.3.4.1/docs/user-guide/html/_images/important.png +0 -0
  558. amps-python-client-5.3.4.1/docs/user-guide/html/_images/important.svg +0 -25
  559. amps-python-client-5.3.4.1/docs/user-guide/html/_images/inline_view_conflation.svg +0 -1
  560. amps-python-client-5.3.4.1/docs/user-guide/html/_images/paginated_subs_pub.png +0 -0
  561. amps-python-client-5.3.4.1/docs/user-guide/html/_images/paginated_subs_sub.png +0 -0
  562. amps-python-client-5.3.4.1/docs/user-guide/html/_images/queue_usage_overview.svg +0 -627
  563. amps-python-client-5.3.4.1/docs/user-guide/html/_images/replication_hub.png +0 -0
  564. amps-python-client-5.3.4.1/docs/user-guide/html/_images/replication_scenario_with_ha.png +0 -0
  565. amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_overview_1.svg +0 -248
  566. amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_overview_2.svg +0 -183
  567. amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_update_sequence.svg +0 -1
  568. amps-python-client-5.3.4.1/docs/user-guide/html/_images/tip.png +0 -0
  569. amps-python-client-5.3.4.1/docs/user-guide/html/_images/tip.svg +0 -31
  570. amps-python-client-5.3.4.1/docs/user-guide/html/_images/warning.png +0 -0
  571. amps-python-client-5.3.4.1/docs/user-guide/html/_images/warning.svg +0 -23
  572. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/acks.rst.txt +0 -232
  573. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/actions.rst.txt +0 -111
  574. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps-statistics.rst.txt +0 -358
  575. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps_expressions.rst.txt +0 -83
  576. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps_functions.rst.txt +0 -11
  577. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/auxiliary_modules.rst.txt +0 -86
  578. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/config-file-shortcuts.rst.txt +0 -9
  579. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/conflated_topics.rst.txt +0 -111
  580. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/constructing-fields.rst.txt +0 -269
  581. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/daemon.rst.txt +0 -232
  582. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/delta.rst.txt +0 -556
  583. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/distribution.rst.txt +0 -186
  584. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/enrichment.rst.txt +0 -191
  585. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/events.rst.txt +0 -39
  586. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/file_format_versions.rst.txt +0 -203
  587. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/glossary.rst.txt +0 -101
  588. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/ha.rst.txt +0 -465
  589. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/installing_and_starting.rst.txt +0 -23
  590. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/intro.rst.txt +0 -116
  591. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/logging.rst.txt +0 -34
  592. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/messageTypes.rst.txt +0 -1398
  593. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/monitoring.rst.txt +0 -326
  594. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/oof.rst.txt +0 -312
  595. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/operation.rst.txt +0 -27
  596. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/pub_sub.rst.txt +0 -49
  597. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/queues.rst.txt +0 -1351
  598. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/replication.rst.txt +0 -1228
  599. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/securing.rst.txt +0 -657
  600. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/sow.rst.txt +0 -57
  601. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/sow_queries.rst.txt +0 -25
  602. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/transports.rst.txt +0 -291
  603. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/troubleshooting.rst.txt +0 -517
  604. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/txlog.rst.txt +0 -62
  605. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/usecases.rst.txt +0 -21
  606. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/utilities.rst.txt +0 -62
  607. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/views.rst.txt +0 -175
  608. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/index.rst.txt +0 -110
  609. amps-python-client-5.3.4.1/docs/user-guide/html/_static/custom.css +0 -192
  610. amps-python-client-5.3.4.1/docs/user-guide/html/_static/custom.css.backup +0 -161
  611. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/acks.html +0 -289
  612. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/actions.html +0 -3782
  613. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps-statistics.html +0 -439
  614. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps_expressions.html +0 -1552
  615. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps_functions.html +0 -1626
  616. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/auxiliary_modules.html +0 -2548
  617. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/config-file-shortcuts.html +0 -508
  618. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/conflated_topics.html +0 -328
  619. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/constructing-fields.html +0 -447
  620. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/daemon.html +0 -295
  621. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/delta.html +0 -609
  622. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/distribution.html +0 -246
  623. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/enrichment.html +0 -264
  624. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/events.html +0 -449
  625. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/file_format_versions.html +0 -229
  626. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/glossary.html +0 -215
  627. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/ha.html +0 -978
  628. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/installing_and_starting.html +0 -357
  629. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/intro.html +0 -572
  630. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/logging.html +0 -972
  631. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/messageTypes.html +0 -1280
  632. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/monitoring.html +0 -718
  633. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/oof.html +0 -341
  634. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/operation.html +0 -1515
  635. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/pub_sub.html +0 -934
  636. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/queues.html +0 -1767
  637. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/replication.html +0 -1777
  638. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/securing.html +0 -697
  639. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/sow.html +0 -1038
  640. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/sow_queries.html +0 -621
  641. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/spark.html +0 -819
  642. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/transports.html +0 -352
  643. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/troubleshooting.html +0 -530
  644. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/txlog.html +0 -1013
  645. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/usecases.html +0 -288
  646. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/utilities.html +0 -133
  647. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/views.html +0 -1120
  648. amps-python-client-5.3.4.1/docs/user-guide/html/genindex.html +0 -1261
  649. amps-python-client-5.3.4.1/docs/user-guide/html/index.html +0 -163
  650. amps-python-client-5.3.4.1/docs/user-guide/html/objects.inv +0 -0
  651. amps-python-client-5.3.4.1/docs/user-guide/html/search.html +0 -106
  652. amps-python-client-5.3.4.1/docs/user-guide/html/searchindex.js +0 -1
  653. amps-python-client-5.3.4.1/include/ampspy_bookmarkstore.hpp +0 -63
  654. amps-python-client-5.3.4.1/include/ampspy_compat.h +0 -63
  655. amps-python-client-5.3.4.1/include/ampspy_defs.hpp +0 -181
  656. amps-python-client-5.3.4.1/include/ampspy_recoverypointadapter.hpp +0 -52
  657. amps-python-client-5.3.4.1/include/ampspy_shims.hpp +0 -113
  658. amps-python-client-5.3.4.1/include/ampspy_type_object.hpp +0 -242
  659. amps-python-client-5.3.4.1/include/ampspy_types.hpp +0 -1139
  660. amps-python-client-5.3.4.1/include/ampspyver.h +0 -30
  661. amps-python-client-5.3.4.1/index.html +0 -66
  662. amps-python-client-5.3.4.1/samples/AMPSConsolePublisher.py +0 -59
  663. amps-python-client-5.3.4.1/samples/AMPSConsoleSubscriber.py +0 -63
  664. amps-python-client-5.3.4.1/samples/AMPSFIXBuilderPublisher.py +0 -71
  665. amps-python-client-5.3.4.1/samples/AMPSFIXShredderSubscriber.py +0 -69
  666. amps-python-client-5.3.4.1/samples/AMPSNVFIXBuilderPublisher.py +0 -71
  667. amps-python-client-5.3.4.1/samples/AMPSNVFIXShredderSubscriber.py +0 -67
  668. amps-python-client-5.3.4.1/samples/AMPSPublishForReplay.py +0 -81
  669. amps-python-client-5.3.4.1/samples/AMPSQueueConsumer.py +0 -69
  670. amps-python-client-5.3.4.1/samples/AMPSQueuePublisher.py +0 -59
  671. amps-python-client-5.3.4.1/samples/AMPSSOWConsolePublisher.py +0 -67
  672. amps-python-client-5.3.4.1/samples/AMPSSOWConsoleSubscriber.py +0 -77
  673. amps-python-client-5.3.4.1/samples/AMPSSOWandSubscribeConsoleSubscriber.py +0 -79
  674. amps-python-client-5.3.4.1/samples/AMPSSOWandSubscribeWithOOF.py +0 -108
  675. amps-python-client-5.3.4.1/samples/AMPSSubscribeForReplay.py +0 -128
  676. amps-python-client-5.3.4.1/samples/AMPSUpdateForOOF.py +0 -123
  677. amps-python-client-5.3.4.1/samples/CompositeMessagePublisher.py +0 -84
  678. amps-python-client-5.3.4.1/samples/CompositeMessageSubscriber.py +0 -87
  679. amps-python-client-5.3.4.1/samples/RandomServerChooser.py +0 -41
  680. amps-python-client-5.3.4.1/samples/sample.xml +0 -335
  681. amps-python-client-5.3.4.1/setup.py +0 -209
  682. amps-python-client-5.3.4.1/setup_amps.py +0 -94
  683. amps-python-client-5.3.4.1/src/ampspy_shims.cpp +0 -203
  684. amps-python-client-5.3.4.1/src/ampspy_type_object.cpp +0 -484
  685. amps-python-client-5.3.4.1/src/authenticator.cpp +0 -128
  686. amps-python-client-5.3.4.1/src/bookmarkstore.cpp +0 -238
  687. amps-python-client-5.3.4.1/src/client.cpp +0 -2430
  688. amps-python-client-5.3.4.1/src/client_docs.h +0 -956
  689. amps-python-client-5.3.4.1/src/cmessagehandler.cpp +0 -151
  690. amps-python-client-5.3.4.1/src/command.cpp +0 -164
  691. amps-python-client-5.3.4.1/src/command_docs.h +0 -194
  692. amps-python-client-5.3.4.1/src/compositemessagebuilder.cpp +0 -111
  693. amps-python-client-5.3.4.1/src/compositemessageparser.cpp +0 -146
  694. amps-python-client-5.3.4.1/src/conflatingrecoverypointadapter.cpp +0 -194
  695. amps-python-client-5.3.4.1/src/cpp/include/amps/BlockPublishStore.hpp +0 -2053
  696. amps-python-client-5.3.4.1/src/cpp/include/amps/BlockStore.hpp +0 -677
  697. amps-python-client-5.3.4.1/src/cpp/include/amps/BookmarkStore.hpp +0 -542
  698. amps-python-client-5.3.4.1/src/cpp/include/amps/Buffer.hpp +0 -214
  699. amps-python-client-5.3.4.1/src/cpp/include/amps/CompositeMessageBuilder.hpp +0 -174
  700. amps-python-client-5.3.4.1/src/cpp/include/amps/CompositeMessageParser.hpp +0 -151
  701. amps-python-client-5.3.4.1/src/cpp/include/amps/DefaultServerChooser.hpp +0 -162
  702. amps-python-client-5.3.4.1/src/cpp/include/amps/Field.hpp +0 -719
  703. amps-python-client-5.3.4.1/src/cpp/include/amps/HAClient.hpp +0 -370
  704. amps-python-client-5.3.4.1/src/cpp/include/amps/HAClientImpl.hpp +0 -460
  705. amps-python-client-5.3.4.1/src/cpp/include/amps/HybridPublishStore.hpp +0 -481
  706. amps-python-client-5.3.4.1/src/cpp/include/amps/LoggedBookmarkStore.hpp +0 -1255
  707. amps-python-client-5.3.4.1/src/cpp/include/amps/MMapBookmarkStore.hpp +0 -1283
  708. amps-python-client-5.3.4.1/src/cpp/include/amps/MMapStoreBuffer.hpp +0 -290
  709. amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryBookmarkStore.hpp +0 -1622
  710. amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryPublishStore.hpp +0 -66
  711. amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryStoreBuffer.hpp +0 -244
  712. amps-python-client-5.3.4.1/src/cpp/include/amps/MemorySubscriptionManager.hpp +0 -850
  713. amps-python-client-5.3.4.1/src/cpp/include/amps/Message.hpp +0 -1819
  714. amps-python-client-5.3.4.1/src/cpp/include/amps/MessageRouter.hpp +0 -618
  715. amps-python-client-5.3.4.1/src/cpp/include/amps/PublishStore.hpp +0 -158
  716. amps-python-client-5.3.4.1/src/cpp/include/amps/ReconnectDelayStrategy.hpp +0 -106
  717. amps-python-client-5.3.4.1/src/cpp/include/amps/ReconnectDelayStrategyImpl.hpp +0 -317
  718. amps-python-client-5.3.4.1/src/cpp/include/amps/RecoveryPoint.hpp +0 -323
  719. amps-python-client-5.3.4.1/src/cpp/include/amps/RecoveryPointAdapter.hpp +0 -501
  720. amps-python-client-5.3.4.1/src/cpp/include/amps/RingBookmarkStore.hpp +0 -669
  721. amps-python-client-5.3.4.1/src/cpp/include/amps/SOWRecoveryPointAdapter.hpp +0 -490
  722. amps-python-client-5.3.4.1/src/cpp/include/amps/ServerChooser.hpp +0 -145
  723. amps-python-client-5.3.4.1/src/cpp/include/amps/ServerChooserImpl.hpp +0 -95
  724. amps-python-client-5.3.4.1/src/cpp/include/amps/amps.h +0 -775
  725. amps-python-client-5.3.4.1/src/cpp/include/amps/amps_impl.h +0 -204
  726. amps-python-client-5.3.4.1/src/cpp/include/amps/amps_ssl.h +0 -78
  727. amps-python-client-5.3.4.1/src/cpp/include/amps/ampscrc.hpp +0 -210
  728. amps-python-client-5.3.4.1/src/cpp/include/amps/ampsplusplus.hpp +0 -8817
  729. amps-python-client-5.3.4.1/src/cpp/include/amps/ampsuri.h +0 -84
  730. amps-python-client-5.3.4.1/src/cpp/include/amps/ampsver.h +0 -41
  731. amps-python-client-5.3.4.1/src/cpp/include/amps/ampsver.h.in +0 -41
  732. amps-python-client-5.3.4.1/src/cpp/include/amps/constants.hpp +0 -194
  733. amps-python-client-5.3.4.1/src/cpp/include/amps/util.hpp +0 -1692
  734. amps-python-client-5.3.4.1/src/cpp/src/amps_protocol.c +0 -688
  735. amps-python-client-5.3.4.1/src/cpp/src/amps_ssl.c +0 -489
  736. amps-python-client-5.3.4.1/src/cpp/src/atfork.c +0 -446
  737. amps-python-client-5.3.4.1/src/cpp/src/client.c +0 -483
  738. amps-python-client-5.3.4.1/src/cpp/src/message.c +0 -837
  739. amps-python-client-5.3.4.1/src/cpp/src/message_generated.h +0 -611
  740. amps-python-client-5.3.4.1/src/cpp/src/tcp.c +0 -1489
  741. amps-python-client-5.3.4.1/src/cpp/src/tcps.c +0 -1894
  742. amps-python-client-5.3.4.1/src/cpp/src/transports.c +0 -123
  743. amps-python-client-5.3.4.1/src/cpp/src/unix.c +0 -984
  744. amps-python-client-5.3.4.1/src/cpp/src/uri.c +0 -301
  745. amps-python-client-5.3.4.1/src/exponentialdelaystrategy.cpp +0 -137
  746. amps-python-client-5.3.4.1/src/failedwritehandler.cpp +0 -116
  747. amps-python-client-5.3.4.1/src/fixbuilder.cpp +0 -146
  748. amps-python-client-5.3.4.1/src/fixeddelaystrategy.cpp +0 -114
  749. amps-python-client-5.3.4.1/src/fixshredder.cpp +0 -105
  750. amps-python-client-5.3.4.1/src/fixshredder_docs.h +0 -38
  751. amps-python-client-5.3.4.1/src/haclient.cpp +0 -691
  752. amps-python-client-5.3.4.1/src/haclient_docs.h +0 -132
  753. amps-python-client-5.3.4.1/src/hybridpublishstore.cpp +0 -137
  754. amps-python-client-5.3.4.1/src/hybridpublishstore_docs.h +0 -31
  755. amps-python-client-5.3.4.1/src/memorybookmarkstore.cpp +0 -373
  756. amps-python-client-5.3.4.1/src/memorybookmarkstore_docs.h +0 -39
  757. amps-python-client-5.3.4.1/src/memorypublishstore.cpp +0 -160
  758. amps-python-client-5.3.4.1/src/memorypublishstore_docs.h +0 -32
  759. amps-python-client-5.3.4.1/src/message.cpp +0 -765
  760. amps-python-client-5.3.4.1/src/message_docs.h +0 -306
  761. amps-python-client-5.3.4.1/src/messagestream.cpp +0 -623
  762. amps-python-client-5.3.4.1/src/messagestream_docs.h +0 -45
  763. amps-python-client-5.3.4.1/src/mmapbookmarkstore.cpp +0 -422
  764. amps-python-client-5.3.4.1/src/nvfixbuilder.cpp +0 -160
  765. amps-python-client-5.3.4.1/src/nvfixbuilder_docs.h +0 -33
  766. amps-python-client-5.3.4.1/src/nvfixshredder.cpp +0 -99
  767. amps-python-client-5.3.4.1/src/nvfixshredder_docs.h +0 -39
  768. amps-python-client-5.3.4.1/src/publishstore.cpp +0 -183
  769. amps-python-client-5.3.4.1/src/raw_wrapper.cpp +0 -756
  770. amps-python-client-5.3.4.1/src/reason.cpp +0 -71
  771. amps-python-client-5.3.4.1/src/recoverypoint.cpp +0 -135
  772. amps-python-client-5.3.4.1/src/recoverypointadapter.cpp +0 -171
  773. amps-python-client-5.3.4.1/src/ringbookmarkstore.cpp +0 -360
  774. amps-python-client-5.3.4.1/src/serverchooser.cpp +0 -245
  775. amps-python-client-5.3.4.1/src/serverchooser_docs.h +0 -39
  776. amps-python-client-5.3.4.1/src/sowrecoverypointadapter.cpp +0 -248
  777. amps-python-client-5.3.4.1/src/store.cpp +0 -62
  778. amps-python-client-5.3.4.1/src/versioninfo.cpp +0 -175
  779. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/HISTORY +0 -0
  780. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/LICENSE +0 -0
  781. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/README.md +0 -0
  782. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/ajax-loader.gif +0 -0
  783. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/alabaster.css +0 -0
  784. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/basic.css +0 -0
  785. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/comment-bright.png +0 -0
  786. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/comment-close.png +0 -0
  787. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/comment.png +0 -0
  788. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/doctools.js +0 -0
  789. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/down-pressed.png +0 -0
  790. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/down.png +0 -0
  791. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/file.png +0 -0
  792. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/flag_logo.png +0 -0
  793. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/flag_logo.svg +0 -0
  794. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/jquery-3.1.0.js +0 -0
  795. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/jquery.js +0 -0
  796. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/minus.png +0 -0
  797. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/plus.png +0 -0
  798. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/pygments.css +0 -0
  799. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/searchtools.js +0 -0
  800. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/underscore-1.3.1.js +0 -0
  801. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/underscore.js +0 -0
  802. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/up-pressed.png +0 -0
  803. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/up.png +0 -0
  804. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/command-reference/html/_static/websupport.js +0 -0
  805. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_sources/code.rst.txt +0 -0
  806. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_sources/index.rst.txt +0 -0
  807. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/ajax-loader.gif +0 -0
  808. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/basic.css +0 -0
  809. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/classic.css +0 -0
  810. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/comment-bright.png +0 -0
  811. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/comment-close.png +0 -0
  812. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/comment.png +0 -0
  813. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/default.css +0 -0
  814. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/doctools.js +0 -0
  815. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/down-pressed.png +0 -0
  816. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/down.png +0 -0
  817. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/file.png +0 -0
  818. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/jquery-3.1.0.js +0 -0
  819. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/jquery.js +0 -0
  820. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/minus.png +0 -0
  821. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/plus.png +0 -0
  822. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/pygments.css +0 -0
  823. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/searchtools.js +0 -0
  824. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/sidebar.js +0 -0
  825. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/underscore-1.3.1.js +0 -0
  826. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/underscore.js +0 -0
  827. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/up-pressed.png +0 -0
  828. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/up.png +0 -0
  829. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/html/_static/websupport.js +0 -0
  830. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_images/caution.png +0 -0
  831. {amps-python-client-5.3.4.1/docs/command-reference → amps-python-client-5.3.4.2/docs/python}/html/_images/caution.svg +0 -0
  832. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_images/connection_string.svg +0 -0
  833. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_images/important.png +0 -0
  834. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_images/important.svg +0 -0
  835. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_images/tip.png +0 -0
  836. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_images/tip.svg +0 -0
  837. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_images/warning.png +0 -0
  838. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_sources/chapters/cpp-compiler-list.rst.txt +0 -0
  839. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_sources/index.rst.txt +0 -0
  840. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/ajax-loader.gif +0 -0
  841. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/alabaster.css +0 -0
  842. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/basic.css +0 -0
  843. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/comment-bright.png +0 -0
  844. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/comment-close.png +0 -0
  845. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/comment.png +0 -0
  846. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/doctools.js +0 -0
  847. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/down-pressed.png +0 -0
  848. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/down.png +0 -0
  849. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/file.png +0 -0
  850. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/flag_logo.png +0 -0
  851. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/flag_logo.svg +0 -0
  852. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/jquery-3.1.0.js +0 -0
  853. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/jquery.js +0 -0
  854. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/minus.png +0 -0
  855. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/plus.png +0 -0
  856. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/pygments.css +0 -0
  857. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/searchtools.js +0 -0
  858. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/underscore-1.3.1.js +0 -0
  859. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/underscore.js +0 -0
  860. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/up-pressed.png +0 -0
  861. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/up.png +0 -0
  862. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python/html/_static/websupport.js +0 -0
  863. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_sources/chapters/crankitup.rst.txt +0 -0
  864. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_sources/chapters/equipment.rst.txt +0 -0
  865. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_sources/index.rst.txt +0 -0
  866. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/ajax-loader.gif +0 -0
  867. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/alabaster.css +0 -0
  868. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/basic.css +0 -0
  869. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/comment-bright.png +0 -0
  870. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/comment-close.png +0 -0
  871. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/comment.png +0 -0
  872. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/doctools.js +0 -0
  873. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/down-pressed.png +0 -0
  874. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/down.png +0 -0
  875. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/file.png +0 -0
  876. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/flag_logo.png +0 -0
  877. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/flag_logo.svg +0 -0
  878. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/jquery-3.1.0.js +0 -0
  879. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/jquery.js +0 -0
  880. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/minus.png +0 -0
  881. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/plus.png +0 -0
  882. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/pygments.css +0 -0
  883. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/searchtools.js +0 -0
  884. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/underscore-1.3.1.js +0 -0
  885. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/underscore.js +0 -0
  886. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/up-pressed.png +0 -0
  887. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/up.png +0 -0
  888. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/python-quickstart/html/_static/websupport.js +0 -0
  889. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/resources/custom.css +0 -0
  890. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/resources/flag_logo.svg +0 -0
  891. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_sources/chapters/spark.rst.txt +0 -0
  892. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/ajax-loader.gif +0 -0
  893. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/alabaster.css +0 -0
  894. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/basic.css +0 -0
  895. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/comment-bright.png +0 -0
  896. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/comment-close.png +0 -0
  897. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/comment.png +0 -0
  898. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/doctools.js +0 -0
  899. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/down-pressed.png +0 -0
  900. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/down.png +0 -0
  901. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/file.png +0 -0
  902. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/flag_logo.png +0 -0
  903. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/flag_logo.svg +0 -0
  904. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/jquery-3.1.0.js +0 -0
  905. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/jquery.js +0 -0
  906. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/minus.png +0 -0
  907. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/plus.png +0 -0
  908. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/pygments.css +0 -0
  909. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/searchtools.js +0 -0
  910. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/underscore-1.3.1.js +0 -0
  911. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/underscore.js +0 -0
  912. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/up-pressed.png +0 -0
  913. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/up.png +0 -0
  914. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/docs/user-guide/html/_static/websupport.js +0 -0
  915. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/src/cpp/include/amps/amps_generated.h +0 -0
  916. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/src/cpp/src/amps_protocol_generated.h +0 -0
  917. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.2}/src/cpp/src/makefile +0 -0
@@ -1,1013 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
-
4
-
5
- <html xmlns="http://www.w3.org/1999/xhtml">
6
- <head>
7
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
8
-
9
- <title>14. Transactional Messaging and Bookmark Subscriptions &#8212; AMPS User Guide develop documentation</title>
10
-
11
- <link rel="stylesheet" href="../_static/alabaster.css" type="text/css" />
12
- <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
13
-
14
- <script type="text/javascript">
15
- var DOCUMENTATION_OPTIONS = {
16
- URL_ROOT: '../',
17
- VERSION: 'develop',
18
- COLLAPSE_INDEX: false,
19
- FILE_SUFFIX: '.html',
20
- HAS_SOURCE: true,
21
- SOURCELINK_SUFFIX: '.txt'
22
- };
23
- </script>
24
- <script type="text/javascript" src="../_static/jquery.js"></script>
25
- <script type="text/javascript" src="../_static/underscore.js"></script>
26
- <script type="text/javascript" src="../_static/doctools.js"></script>
27
- <link rel="index" title="Index" href="../genindex.html" />
28
- <link rel="search" title="Search" href="../search.html" />
29
- <link rel="next" title="15. Message Queues" href="queues.html" />
30
- <link rel="prev" title="13. Aggregating and Analyzing Data in AMPS" href="views.html" />
31
-
32
- <link rel="stylesheet" href="../_static/custom.css" type="text/css" />
33
-
34
-
35
- <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
36
-
37
- </head>
38
- <body role="document">
39
- <div class="document">
40
-
41
- <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
42
- <div class="sphinxsidebarwrapper">
43
- <p class="logo"><a href="../index.html">
44
- <img class="logo" src="../_static/flag_logo.png" alt="Logo"/>
45
- </a></p>
46
- <h3><a href="../index.html">Table Of Contents</a></h3>
47
- <ul>
48
- <li><a class="reference internal" href="#">14. Transactional Messaging and Bookmark Subscriptions</a><ul>
49
- <li><a class="reference internal" href="#recording-and-replaying-messages-with-transaction-logs">Recording and Replaying Messages with Transaction Logs</a><ul>
50
- <li><a class="reference internal" href="#understanding-message-persistence">Understanding Message Persistence</a></li>
51
- <li><a class="reference internal" href="#configuring-a-transaction-log">Configuring a Transaction Log</a></li>
52
- <li><a class="reference internal" href="#replaying-messages-with-bookmark-subscription">Replaying Messages with Bookmark Subscription</a><ul>
53
- <li><a class="reference internal" href="#replay-of-full-transaction-log">Replay of Full Transaction Log</a></li>
54
- <li><a class="reference internal" href="#bookmark-replay-from-now">Bookmark Replay from NOW</a></li>
55
- <li><a class="reference internal" href="#bookmark-replay-with-a-bookmark">Bookmark Replay with a Bookmark</a></li>
56
- <li><a class="reference internal" href="#developer-note-the-most-recent-value">Developer Note: the MOST_RECENT value</a></li>
57
- <li><a class="reference internal" href="#bookmark-replay-from-a-moment-in-time">Bookmark Replay from a Moment in Time</a></li>
58
- <li><a class="reference internal" href="#bookmark-replay-with-a-starting-and-stopping-point">Bookmark Replay with a Starting and Stopping Point</a></li>
59
- <li><a class="reference internal" href="#content-and-topic-filtering">Content and Topic Filtering</a></li>
60
- <li><a class="reference internal" href="#delivery-rate-control-for-bookmark-subscriptions">Delivery Rate Control for Bookmark Subscriptions</a></li>
61
- <li><a class="reference internal" href="#pausing-and-resuming-bookmark-subscriptions">Pausing and Resuming Bookmark Subscriptions</a></li>
62
- <li><a class="reference internal" href="#conflation-and-bookmark-subscriptions">Conflation and Bookmark Subscriptions</a></li>
63
- <li><a class="reference internal" href="#requesting-message-timestamps">Requesting Message Timestamps</a></li>
64
- </ul>
65
- </li>
66
- <li><a class="reference internal" href="#selecting-message-durability-options">Selecting Message Durability Options</a><ul>
67
- <li><a class="reference internal" href="#using-the-fully-durable-option-for-bookmark-subscriptions">Using the &#8216;fully_durable&#8217; Option for Bookmark Subscriptions</a></li>
68
- <li><a class="reference internal" href="#using-the-live-option-for-bookmark-subscriptions">Using the &#8216;live&#8217; Option for Bookmark Subscriptions</a></li>
69
- </ul>
70
- </li>
71
- <li><a class="reference internal" href="#managing-journal-files">Managing Journal Files</a><ul>
72
- <li><a class="reference internal" href="#reference-to-file-types">Reference to File Types</a></li>
73
- </ul>
74
- </li>
75
- </ul>
76
- </li>
77
- <li><a class="reference internal" href="#using-amps-grep-to-find-messages-in-the-transaction-log">Using amps-grep to Find Messages in the Transaction Log</a><ul>
78
- <li><a class="reference internal" href="#finding-messages-from-a-specific-client">Finding Messages from a Specific Client</a></li>
79
- <li><a class="reference internal" href="#finding-messages-for-a-specific-topic">Finding Messages for a Specific Topic</a></li>
80
- <li><a class="reference internal" href="#finding-messages-with-specific-data">Finding Messages with Specific Data</a></li>
81
- </ul>
82
- </li>
83
- </ul>
84
- </li>
85
- </ul>
86
- <div class="relations">
87
- <h3>Related Topics</h3>
88
- <ul>
89
- <li><a href="../index.html">Documentation overview</a><ul>
90
- <li>Previous: <a href="views.html" title="previous chapter">13. Aggregating and Analyzing Data in AMPS</a></li>
91
- <li>Next: <a href="queues.html" title="next chapter">15. Message Queues</a></li>
92
- </ul></li>
93
- </ul>
94
- </div>
95
- <div id="searchbox" style="display: none" role="search">
96
- <h3>Quick search</h3>
97
- <form class="search" action="../search.html" method="get">
98
- <div><input type="text" name="q" /></div>
99
- <div><input type="submit" value="Go" /></div>
100
- <input type="hidden" name="check_keywords" value="yes" />
101
- <input type="hidden" name="area" value="default" />
102
- </form>
103
- </div>
104
- <script type="text/javascript">$('#searchbox').show(0);</script>
105
- </div>
106
- </div>
107
- <div class="documentwrapper">
108
- <div class="bodywrapper">
109
- <div class="body" role="main">
110
-
111
- <div class="section" id="transactional-messaging-and-bookmark-subscriptions">
112
- <span id="txlog"></span><span id="ug-txlog"></span><span id="index-0"></span><h1>14. Transactional Messaging and Bookmark Subscriptions<a class="headerlink" href="#transactional-messaging-and-bookmark-subscriptions" title="Permalink to this headline">¶</a></h1>
113
- <p>AMPS includes support for transactional messaging, which includes
114
- persistence, consistency across restarts, and replay of messages
115
- published to AMPS. AMPS message queues use the transaction log
116
- to hold the messages in the queue. Transactional messaging is
117
- also the basis for replication, a key component of the
118
- high-availability capability in AMPS (as described in <a class="reference internal" href="ha.html#ug-ha"><span class="std std-ref">Highly Available AMPS Installations</span></a>).</p>
119
- <p>AMPS message queues use the transaction log as a
120
- persistent record of the messages that have entered the queue, the order
121
- of those messages, and which messages have been acknowledged and removed
122
- from the queue. All of these capabilities rely on the AMPS <em>transaction
123
- log</em>. The transaction log maintains a record of messages. You can choose
124
- which messages are included in the transaction log by specifying the
125
- message types and topics you want to record.</p>
126
- <p>The AMPS transaction log differs from transaction logging in a
127
- conventional relational database system. Unlike transaction logs that
128
- are intended solely to maintain the consistency of data in the system,
129
- the AMPS transaction log is fully queryable through the AMPS client
130
- APIs. For applications that need access to historical information, or
131
- applications that need to be able to recover state in the event of a
132
- client restart, the transaction log allows you to do this, relying on
133
- AMPS as the definitive single version of the state of the application.
134
- There is no need for complex logic to handle reconciliation or state
135
- restoration in the client. AMPS handles the difficult parts of this
136
- process, and the transaction log guarantees consistency.</p>
137
- <p>Topics covered by a transaction log are able to provide reliable
138
- messaging with strict consistency guarantees.</p>
139
- <p>When a transaction log is enabled, topics covered by the transaction log
140
- provide <em>atomic broadcast</em> from that instance. This means that the
141
- instance enforces a repeatable ordering on the messages, and guarantees
142
- that all subscribers receive messages reliably, in a consistent order,
143
- and with no gaps or duplicates.</p>
144
- <p>Enabling a transaction log in an instance also enables the following
145
- behaviors:</p>
146
- <ul class="simple">
147
- <li>When a transaction log is enabled, AMPS uses the client name provided
148
- by each client to manage the sequencing and integrity of the message
149
- stream, and to quickly detect and respond to reconnection. To allow this,
150
- each connection to AMPS must have a unique client name. If a duplicate
151
- client name is detected, one of the clients is assumed to be defunct and
152
- is disconnected.</li>
153
- <li>When a transaction log is enabled, persisted acknowledgments to a publish
154
- are conflated, as described in <a class="reference internal" href="acks.html#ug-ack-conflation"><span class="std std-ref">Acknowledgment Conflation and Publish Acknowledgments</span></a>.</li>
155
- </ul>
156
- <div class="section" id="recording-and-replaying-messages-with-transaction-logs">
157
- <span id="ha-transaction-log"></span><h2>Recording and Replaying Messages with Transaction Logs<a class="headerlink" href="#recording-and-replaying-messages-with-transaction-logs" title="Permalink to this headline">¶</a></h2>
158
- <p id="index-1">AMPS includes the ability to record messages in a <em>transaction log</em>, and
159
- replay those messages at a later time. This capability is key for high
160
- availability, since it gives subscribers the ability to resume a
161
- subscription at a point in time without missing messages. This
162
- capability is also the foundation of replication, since it gives AMPS
163
- the ability to preserve message streams to be synchronized to an
164
- instance that has gone offline.</p>
165
- <p>The transaction log in AMPS contains a sequential, historical record of
166
- messages. Each message is identified by a <code class="docutils literal"><span class="pre">bookmark</span></code>, a unique
167
- identifier that AMPS uses to locate the message within the overall set
168
- of recorded messages. The transaction log can record messages for a
169
- topic, a set of topics, or for filtered content on one or more topics.</p>
170
- <p>An application can request a subscription that replays messages from the
171
- transaction log. Subscriptions that replay from the transaction log are
172
- called <em>bookmark subscriptions</em>, since the subscription begins at a
173
- specific point in the transaction log identified by a specific bookmark.
174
- Bookmark subscriptions provide topic and content filtering in the same
175
- way that normal subscriptions do, and provide a set of unique
176
- capabilities (such as the ability to pause and resume the subscription)
177
- that are made possible because the subscription is provided from a
178
- persistent record of the message stream. Bookmark subscriptions are also
179
- key to high availability with AMPS. When a client is recovering from a
180
- restart or failure, this ability to replay allows a client to fill gaps
181
- in received messages and resume subscriptions without missing a message.
182
- This feature also allows new clients to receive an exact replay of a
183
- message stream. Replay from the transaction log is also useful for
184
- auditing, quality assurance, and backtesting.</p>
185
- <p>The transaction log is used in AMPS replication to ensure that all
186
- servers in a replication group are continually synchronized should one
187
- of them experience an interruption in service. For example, say an AMPS
188
- instance, as a member of a replication group, goes down. When it comes
189
- back up, it can query another AMPS instance for all of the messages it
190
- did not receive, thereby catching up to a point of synchronization with
191
- the other instances. This feature, when coupled with AMPS replication,
192
- ensures that message subscriptions are always available and up-to-date.</p>
193
- <p>The AMPS transaction log records messages that are received from a
194
- publisher and events that affect those messages such as <code class="docutils literal"><span class="pre">sow_delete</span></code>
195
- commands. AMPS does not record messages that are created through a view,
196
- out-of-focus messages, or event status messages created by AMPS.</p>
197
- <p>When a subscriber requests a replay from the transaction log, AMPS will
198
- deliver <code class="docutils literal"><span class="pre">publish</span></code> messages from the transaction log in exactly the
199
- order in which the instance recorded them. Messages that are not
200
- stored in the transaction log (for example, out-of-focus messages or
201
- event messages, messages that would have been produced by a view,
202
- acknowledgment messages to clients) are not delivered as part of
203
- the replay.</p>
204
- <div class="section" id="understanding-message-persistence">
205
- <h3>Understanding Message Persistence<a class="headerlink" href="#understanding-message-persistence" title="Permalink to this headline">¶</a></h3>
206
- <p>To take advantage of transactional messaging, the publisher and the AMPS
207
- instance work together to ensure that messages are written to persistent
208
- storage. AMPS lets the publisher know when the message is persisted, so
209
- that the publisher knows that it no longer needs to track the message.</p>
210
- <p>When a publisher publishes a message to AMPS, the publisher assigns each
211
- message a unique sequence number. Once the message has been written to
212
- persistent storage, AMPS uses the sequence number to acknowledge the
213
- message and let the publisher know that the message is persisted. Once
214
- AMPS has acknowledged the message, the publisher considers the message
215
- published. For safety, AMPS always writes a message to the local
216
- transaction log before acknowledging that the message is persisted. If
217
- the topic is configured for synchronous replication, all replication
218
- destinations have to persist the message before AMPS will acknowledge
219
- that the message is persisted.</p>
220
- <p>For efficiency, AMPS may not acknowledge each individual message.
221
- Instead, AMPS acknowledges the most recent persisted message to indicate
222
- that all previous messages have also been persisted, as described in
223
- <a class="reference internal" href="acks.html#ug-ack-conflation"><span class="std std-ref">Acknowledgment Conflation and Publish Acknowledgments</span></a>. Publishers that
224
- need transactional messaging do not wait for acknowledgment to publish
225
- more messages. Instead, publishers retain messages that haven&#8217;t been
226
- acknowledged, and republish messages that haven&#8217;t been acknowledged if
227
- failover occurs. The AMPS client libraries include this functionality
228
- for persistent messaging (see descriptions of the <em>publish store</em> in
229
- client library documentation). See the <a class="reference internal" href="ha.html#ug-guaranteed-publishing"><span class="std std-ref">Guaranteed Publishing</span></a> section
230
- of this guide for further details.</p>
231
- </div>
232
- <div class="section" id="configuring-a-transaction-log">
233
- <h3>Configuring a Transaction Log<a class="headerlink" href="#configuring-a-transaction-log" title="Permalink to this headline">¶</a></h3>
234
- <p id="index-2">Before demonstrating the power of the transaction log, we will first
235
- show how to configure the transaction log in the AMPS configuration
236
- file.</p>
237
- <div class="highlight-xml"><div class="highlight"><pre><span></span><span class="c">&lt;!-- All transaction log definitions are contained within the TransactionLog block.</span>
238
- <span class="c"> The following global settings apply to all Topic blocks defined within the</span>
239
- <span class="c"> TransactionLog: JournalDirectory, PreallocatedJournalFiles, and JournalSize. --&gt;</span>
240
- <span class="nt">&lt;TransactionLog&gt;</span>
241
-
242
- <span class="c">&lt;!-- The JournalDirectory is the filesystem location where journal files and journal</span>
243
- <span class="c"> index files will be stored. --&gt;</span>
244
- <span class="nt">&lt;JournalDirectory&gt;</span>./amps/journal/<span class="nt">&lt;/JournalDirectory&gt;</span>
245
-
246
- <span class="c">&lt;!-- The JournalArchiveDirectory is the filesystem location to which AMPS will</span>
247
- <span class="c"> archive journals. Notice that AMPS does not archive files by default. You</span>
248
- <span class="c"> configure an action to archive journal files --&gt;</span>
249
- <span class="nt">&lt;JournalArchiveDirectory&gt;</span>/mnt/somedev0/amps/journal<span class="nt">&lt;/JournalArchiveDirectory&gt;</span>
250
-
251
- <span class="c">&lt;!-- PreallocatedJournalFiles defines the number of journal files AMPS will create as</span>
252
- <span class="c"> part of the server startup. Default: 2 Minimum: 1 --&gt;</span>
253
- <span class="nt">&lt;PreallocatedJournalFiles&gt;</span>1<span class="nt">&lt;/PreallocatedJournalFiles&gt;</span>
254
-
255
- <span class="c">&lt;!-- The JournalSize is the approximate size of the journal files</span>
256
- <span class="c"> that AMPS will create. --&gt;</span>
257
-
258
- <span class="nt">&lt;JournalSize&gt;</span>10MB<span class="nt">&lt;/JournalSize&gt;</span> <span class="c">&lt;!-- Suitable for development work,</span>
259
- <span class="c"> a production deployment would</span>
260
- <span class="c"> typically use 250MB to 2GB</span>
261
- <span class="c"> depending on message size,</span>
262
- <span class="c"> message volume volume</span>
263
- <span class="c"> and retention policy. --&gt;</span>
264
-
265
- <span class="c">&lt;!-- When a Topic is specified, then all messages which match exactly the specified</span>
266
- <span class="c"> topic or regular expression will be included in the transaction log. Otherwise,</span>
267
- <span class="c"> AMPS initializes the transaction logging, but does not record any messages to</span>
268
- <span class="c"> the transaction log. --&gt;</span>
269
- <span class="nt">&lt;Topic&gt;</span>
270
- <span class="nt">&lt;Name&gt;</span>orders<span class="nt">&lt;/Name&gt;</span>
271
- <span class="nt">&lt;MessageType&gt;</span>nvfix<span class="nt">&lt;/MessageType&gt;</span>
272
- <span class="nt">&lt;/Topic&gt;</span>
273
-
274
- <span class="nt">&lt;/TransactionLog&gt;</span>
275
- </pre></div>
276
- </div>
277
- </div>
278
- <div class="section" id="replaying-messages-with-bookmark-subscription">
279
- <span id="ug-bookmark-sub"></span><span id="index-3"></span><h3>Replaying Messages with Bookmark Subscription<a class="headerlink" href="#replaying-messages-with-bookmark-subscription" title="Permalink to this headline">¶</a></h3>
280
- <p>One of the most useful and powerful features in AMPS is <em>bookmark
281
- subscription</em>, which is enabled by the transaction log. With bookmark
282
- subscription, an application requests a subscription that starts at a
283
- specific point in the transaction log. AMPS begins the subscription at
284
- the specified point, and provides messages from the transaction log.</p>
285
- <p>Each message in the transaction log has a <em>bookmark</em>. A <em>bookmark</em> is an
286
- opaque, unique identifier that is added by AMPS to each message recorded
287
- in the transaction log. For messages provided from a transaction log,
288
- the field is included in the <code class="docutils literal"><span class="pre">Bookmark</span></code> header of the message. AMPS
289
- guarantees that bookmarks for the instance are monotonically increasing,
290
- which enables AMPS to rapidly find an individual bookmark within the
291
- transaction log.</p>
292
- <p>A bookmark subscription simply requests that AMPS begin the subscription
293
- with the first message following the bookmark provided with the
294
- subscription. AMPS locates the bookmark in the transaction log, and
295
- begins the subscription at that point in time.</p>
296
- <p>One way to think about a bookmark subscription is that AMPS publishes to
297
- the subscribing client only those messages that:</p>
298
- <ol class="arabic simple">
299
- <li>Have bookmarks after the provided bookmark</li>
300
- <li>Match the subscription&#8217;s <code class="docutils literal"><span class="pre">Topic</span></code> and <code class="docutils literal"><span class="pre">Filter</span></code></li>
301
- <li>Have been written to the transaction log</li>
302
- </ol>
303
- <p>AMPS provides these messages in the order in which they were recorded to
304
- the transaction log. Since a bookmark subscription requires a
305
- transaction log, when a client requests a bookmark subscription for a
306
- topic that is not being recorded in the transaction log, AMPS returns an
307
- error.</p>
308
- <p>If the subscription requests a <code class="docutils literal"><span class="pre">completed</span></code> acknowledgment, that
309
- acknowledgment will be delivered to the subscription once replay has completed.
310
- Messages delivered to the subscription after the acknowledgment is delivered
311
- are from new publishes.</p>
312
- <p>AMPS allows an application to submit a comma-delimited list of bookmark
313
- values as the bookmark for a subscription request. In this case, AMPS
314
- begins replay at the oldest bookmark in the list. The client controls
315
- the bookmark provided on the subscription request. For a bookmark
316
- subscription, the AMPS server does not keep a persistent record of which
317
- bookmarks a specific client or subscription has processed. The AMPS
318
- client libraries provide facilities for easily tracking the messages
319
- which an application has processed so the application can resume at the
320
- appropriate point in the transaction log.</p>
321
- <p>Requesting replay from the transaction log is how AMPS applications
322
- manage <em>resumable subscriptions</em>. The application keeps track of which
323
- messages have been processed, and requests replay from the appropriate
324
- point in the transaction log to resume the message stream. This record-keeping
325
- is built into the AMPS client libraries, and most often handled
326
- transparently when a <em>bookmark store</em> is set for the client. Notice that
327
- this means that the AMPS server itself does not track the progress of
328
- individual subscriptions, nor does the application need to inform the server
329
- of how far the subscription has progressed. The application state needed
330
- to resume the subscription is entirely handled on the application side,
331
- with no involvement by the AMPS server. (For details on how specific
332
- client libraries manage the application state, see the <em>Developer Guide</em>
333
- for that client library.)</p>
334
- <div class="admonition tip">
335
- <p class="first admonition-title">Tip</p>
336
- <p class="last">Bookmark subscriptions are provided from the transaction log
337
- rather than the live publish stream. This lets AMPS adapt the
338
- pace of replay to the pace at which the subscriber is consuming
339
- replayed messages without triggering slow client offlining.</p>
340
- </div>
341
- <div class="admonition tip">
342
- <p class="first admonition-title">Tip</p>
343
- <p class="last">While there are similarities between a bookmark subscription
344
- used for replay and a State of the World (SOW) query, the transaction
345
- log and SOW are independent features that can be used separately.
346
- The SOW gives a snapshot of the current view of the latest data, while the
347
- journal is capable of playback of previous messages. Historical
348
- SOW queries provide a snapshot of the SOW at a defined point in
349
- the past, and are provided by the SOW database rather than the
350
- transaction log.</p>
351
- </div>
352
- <p>There are different ways that a client can request a bookmark replay
353
- from the transaction log. Each of these bookmark types meets a
354
- different need and enables a different recovery strategy that an
355
- application can use. The sections below describe the recovery types, the
356
- cases in which they can be used, and how the 60East clients implement
357
- them.</p>
358
- <div class="section" id="replay-of-full-transaction-log">
359
- <h4>Replay of Full Transaction Log<a class="headerlink" href="#replay-of-full-transaction-log" title="Permalink to this headline">¶</a></h4>
360
- <p id="index-4">The epoch bookmark, when requested on a subscription, will replay the
361
- transaction log starting at the very beginning.
362
- Once the transaction log has been replayed in its entirety, then the
363
- subscriber will begin receiving messages on the live incoming stream of
364
- messages. A subscriber does this by requesting a <code class="docutils literal"><span class="pre">0</span></code> in the
365
- <code class="docutils literal"><span class="pre">bookmark</span></code> header field of their subscription. The AMPS clients
366
- provide a constant for epoch, typically represented as <code class="docutils literal"><span class="pre">EPOCH</span></code>.</p>
367
- <p>This type of bookmark can be used in a case where the subscriber has
368
- begun after the start of an event, and needs to catch up on all of the
369
- messages that have been published to the topic.</p>
370
- <p>To ensure that no messages from the subscription are lost during the
371
- replay, AMPS replays messages from the transaction log until the client
372
- reaches the last message in the transaction log. Once all of the
373
- existing messages in the transaction log have been sent to the client,
374
- AMPS will cut over to the live subscription stream and provide messages
375
- to the client as soon as they are persisted.</p>
376
- </div>
377
- <div class="section" id="bookmark-replay-from-now">
378
- <h4>Bookmark Replay from NOW<a class="headerlink" href="#bookmark-replay-from-now" title="Permalink to this headline">¶</a></h4>
379
- <p id="index-5">The NOW bookmark, when requested on a subscription, declines to replay
380
- any messages from the transaction log, and instead begins streaming
381
- messages from the live stream - returning any messages that would be
382
- published to the transaction log that match the subscription&#8217;s <code class="docutils literal"><span class="pre">Topic</span></code>
383
- and <code class="docutils literal"><span class="pre">Filter</span></code>.</p>
384
- <p>This type of bookmark is used when a client is concerned with messages
385
- that will be published to the transaction log, but is unconcerned with
386
- replaying the historical messages in the transaction log. This strategy
387
- is often used for applications that want to ensure that they do not miss
388
- messages, even if the application temporarily loses connectivity, but
389
- are not concerned with older messages. For this case, the application
390
- subscribes with NOW when the application starts, and then re-establishes
391
- the subscription with the most recently-processed bookmark if
392
- connectivity is lost. This resubscription behavior is typically handled
393
- by the client reconnection logic (as in the 60East <code class="docutils literal"><span class="pre">HAClient</span></code>
394
- implementations).</p>
395
- <p>The NOW bookmark is performed using a subscribe query with &#8220;0|1|&#8221; as
396
- the <code class="docutils literal"><span class="pre">bookmark</span></code> field. The AMPS clients provide a constant for this
397
- value, typically represented as <code class="docutils literal"><span class="pre">NOW</span></code>.</p>
398
- </div>
399
- <div class="section" id="bookmark-replay-with-a-bookmark">
400
- <h4>Bookmark Replay with a Bookmark<a class="headerlink" href="#bookmark-replay-with-a-bookmark" title="Permalink to this headline">¶</a></h4>
401
- <p id="index-6">Clients that store the bookmarks from published messages can use those
402
- bookmarks to recover from an interruption in service. By placing a
403
- subscribe query with the last bookmark recorded, a client will get a
404
- replay of all messages persisted to the transaction log after that
405
- bookmark. Once the replay has completed, the subscription will then cut
406
- over to the live stream of messages.</p>
407
- <p>To perform a bookmark replay, the client places a bookmark subscription
408
- with the bookmark at which to start the subscription.</p>
409
- <p>A bookmark subscription must always start at a specific point in the
410
- transaction log. The AMPS server uses a bookmark to locate that
411
- point in the transaction log and begin replay at that point.</p>
412
- <p>If a bookmark is unknown (that is, the transaction log
413
- does not contain that bookmark), the AMPS server does not have a specific
414
- point at which to begin the replay and will assume that the subscriber
415
- has failed over from another instance that has not yet replicated
416
- publishes to this instance, and begin replay at NOW (the end of the
417
- transaction log).</p>
418
- </div>
419
- <div class="section" id="developer-note-the-most-recent-value">
420
- <h4>Developer Note: the MOST_RECENT value<a class="headerlink" href="#developer-note-the-most-recent-value" title="Permalink to this headline">¶</a></h4>
421
- <p id="index-7">The AMPS client libraries provide a special constant value that requests
422
- that the library look up the appropriate recovery point in the bookmark
423
- store and then provide that recovery point in the subscription
424
- request. This special value is typically represented as
425
- <code class="docutils literal"><span class="pre">MOST_RECENT</span></code>, <code class="docutils literal"><span class="pre">RECENT</span></code>, or <code class="docutils literal"><span class="pre">recent</span></code>. When the application requests a
426
- bookmark subscription with a bookmark of <code class="docutils literal"><span class="pre">MOST_RECENT</span></code>, the client library
427
- looks for the most recent bookmarks processed for that subscription, then
428
- provides the appropriate bookmark or list of bookmarks when resubscribing.
429
- This process helps to ensure that the subscription begins at the last
430
- processed message, and the application receives the next unprocessed message
431
- for the subscription. If there is no record of a subscription, the AMPS clients
432
- will start with <code class="docutils literal"><span class="pre">EPOCH</span></code>, so that the first time a subscription is
433
- entered, the application gets the full record of available messages.</p>
434
- <p>It&#8217;s important to remember that the AMPS server has no knowledge of the
435
- <code class="docutils literal"><span class="pre">MOST_RECENT</span></code> value. <code class="docutils literal"><span class="pre">MOST_RECENT</span></code> itself is never sent to AMPS and never
436
- appears in the AMPS log. <code class="docutils literal"><span class="pre">MOST_RECENT</span></code> is simply a request to the AMPS
437
- client library to look up the exact bookmark value to provide to AMPS. The
438
- AMPS client libraries always translate a request for <code class="docutils literal"><span class="pre">MOST_RECENT</span></code>
439
- into either a specific value (typically a list of bookmarks) or <code class="docutils literal"><span class="pre">EPOCH</span></code>.</p>
440
- </div>
441
- <div class="section" id="bookmark-replay-from-a-moment-in-time">
442
- <h4>Bookmark Replay from a Moment in Time<a class="headerlink" href="#bookmark-replay-from-a-moment-in-time" title="Permalink to this headline">¶</a></h4>
443
- <p id="index-8">The final type of bookmark supported is the ASCII-formatted timestamp.
444
- When using a timestamp as the bookmark value, the transaction log
445
- replays all messages that occurred after the timestamp, and then cuts
446
- over to the live subscription once the replay stream has been consumed.</p>
447
- <p>This bookmark has the format of <code class="docutils literal"><span class="pre">YYYYmmddTHHMMSS[Z]</span></code> where:</p>
448
- <ul class="simple">
449
- <li><code class="docutils literal"><span class="pre">YYYY</span></code> is the four digit year.</li>
450
- <li><code class="docutils literal"><span class="pre">mm</span></code> is the two digit month.</li>
451
- <li><code class="docutils literal"><span class="pre">dd</span></code> is the two digit day.</li>
452
- <li><code class="docutils literal"><span class="pre">T</span></code> is the character separator between the date and time.</li>
453
- <li><code class="docutils literal"><span class="pre">HH</span></code> is the two digit hour.</li>
454
- <li><code class="docutils literal"><span class="pre">MM</span></code> is the two digit minute.</li>
455
- <li><code class="docutils literal"><span class="pre">SS</span></code> is the two digit second.</li>
456
- <li><code class="docutils literal"><span class="pre">Z</span></code> is an optional timezone specifier. AMPS timestamps are always
457
- in UTC, regardless of whether the timezone is included. AMPS only
458
- accepts a literal value of <code class="docutils literal"><span class="pre">Z</span></code> for a timezone specifier.</li>
459
- </ul>
460
- <p>For example, a timestamp for January 2nd, 2015, at 12:35:</p>
461
- <div class="code highlight-default"><div class="highlight"><pre><span></span><span class="mi">20150102</span><span class="n">T123500Z</span>
462
- </pre></div>
463
- </div>
464
- <p>With a timestamp, the AMPS server begins replay at the closest point
465
- in the current transaction log, even if there is no message recorded
466
- at that exact moment. This means that a timestamp prior to the
467
- beginning of the journal will start a replay at EPOCH.</p>
468
- </div>
469
- <div class="section" id="bookmark-replay-with-a-starting-and-stopping-point">
470
- <h4>Bookmark Replay with a Starting and Stopping Point<a class="headerlink" href="#bookmark-replay-with-a-starting-and-stopping-point" title="Permalink to this headline">¶</a></h4>
471
- <p>As of version 5.3.2, AMPS allows a subscriber to specify the
472
- point at which a bookmark replay should stop. When specified,
473
- a subscriber will not receive further messages after the replay
474
- reaches the stopping point. Also, when a stopping point is specified
475
- and a <code class="docutils literal"><span class="pre">completed</span></code> acknowledgment is requested for the subscription,
476
- AMPS will return the <code class="docutils literal"><span class="pre">completed</span></code> acknowledgment (if requested)
477
- when the stopping point is reached, rather than when replay reaches
478
- the point in the transaction log at which the subscription was
479
- entered.</p>
480
- <p>To set a starting and stopping point, a subscription provides
481
- a subscription range specifier with the bookmark. The format of the
482
- subscription range specifier is as follows:</p>
483
- <div class="code highlight-default"><div class="highlight"><pre><span></span><span class="o">&lt;</span><span class="n">begin_interval_specifier</span><span class="o">&gt;</span> <span class="o">&lt;</span><span class="n">begin_bookmarks</span><span class="o">&gt;</span> <span class="p">:</span> <span class="o">&lt;</span><span class="n">end_bookmarks</span><span class="o">&gt;</span> <span class="o">&lt;</span><span class="n">end_interval_specifier</span><span class="o">&gt;</span>
484
- </pre></div>
485
- </div>
486
- <p>The <em>begin_interval_specifier</em> is one of:</p>
487
- <table border="1" class="docutils">
488
- <colgroup>
489
- <col width="50%" />
490
- <col width="50%" />
491
- </colgroup>
492
- <thead valign="bottom">
493
- <tr class="row-odd"><th class="head"><strong>Specifier</strong></th>
494
- <th class="head"><strong>Behavior</strong></th>
495
- </tr>
496
- </thead>
497
- <tbody valign="top">
498
- <tr class="row-even"><td><code class="docutils literal"><span class="pre">(</span></code></td>
499
- <td><em>Exclusive replay.</em>
500
- Begin immediately <em>after</em> the bookmark or range
501
- specified. The specified bookmark will <em>not</em>
502
- be present in the replay.</td>
503
- </tr>
504
- <tr class="row-odd"><td><code class="docutils literal"><span class="pre">[</span></code></td>
505
- <td><em>Inclusive replay.</em>
506
- Begin immediately <em>before</em> the bookmark or range
507
- specified. The specified bookmark will
508
- be present in the replay.</td>
509
- </tr>
510
- </tbody>
511
- </table>
512
- <p>The <em>end_interval_specifier</em> is one of:</p>
513
- <table border="1" class="docutils">
514
- <colgroup>
515
- <col width="50%" />
516
- <col width="50%" />
517
- </colgroup>
518
- <thead valign="bottom">
519
- <tr class="row-odd"><th class="head"><strong>Specifier</strong></th>
520
- <th class="head"><strong>Behavior</strong></th>
521
- </tr>
522
- </thead>
523
- <tbody valign="top">
524
- <tr class="row-even"><td><code class="docutils literal"><span class="pre">)</span></code></td>
525
- <td><em>Exclusive replay.</em>
526
- End immediately <em>before</em> the bookmark or range
527
- specified. The specified bookmark will <em>not</em>
528
- be present in the replay.</td>
529
- </tr>
530
- <tr class="row-odd"><td><code class="docutils literal"><span class="pre">]</span></code></td>
531
- <td><em>Inclusive replay.</em>
532
- End immediately <em>after</em> the bookmark or range
533
- specified. The specified bookmark will
534
- be present in the replay.</td>
535
- </tr>
536
- </tbody>
537
- </table>
538
- <p>Bookmarks provided for a subscription range specifier can be either
539
- timestamps (as described above) or literal bookmarks provided by AMPS.</p>
540
- <p>For example, to replay messages received by the instance on June 4, 2020
541
- we could construct an interval beginning at midnight on June 4 UTC
542
- (inclusive) and ending at midnight on June 5 UTC (exclusive), as follows:</p>
543
- <div class="code highlight-default"><div class="highlight"><pre><span></span><span class="p">[</span><span class="mi">20200604</span><span class="n">T000000</span><span class="p">:</span><span class="mi">20200605</span><span class="n">T000000</span><span class="p">)</span>
544
- </pre></div>
545
- </div>
546
- <p>AMPS allows future timestamps in a range specifier. For example, it would
547
- be valid for an application to enter a subscription that collects messages
548
- for a full business day and then completes, even if the application is
549
- started before business hours. AMPS will begin delivering messages at the
550
- start time specified, and deliver a <code class="docutils literal"><span class="pre">completed</span></code> ack (if requested) and
551
- stop delivering messages at the end time specified.</p>
552
- <p>The starting and stopping points are most often provided as timestamps.
553
- AMPS also allows an application to specify starting and stopping points
554
- using message bookmarks. In this case, rather than finding the specific
555
- time specified, AMPS finds the point in the log at which the bookmark
556
- was recorded.</p>
557
- <p>An application can choose to submit a list of bookmarks as the starting or
558
- stopping point. In this case, AMPS will find the <em>earliest</em> bookmark in the
559
- starting point list (as recorded in the local transaction log) and the <em>latest</em>
560
- bookmark in the stopping point list (as recorded in the local transaction log), and
561
- replay as though those two bookmarks had been provided to the replay command.</p>
562
- </div>
563
- <div class="section" id="content-and-topic-filtering">
564
- <h4>Content and Topic Filtering<a class="headerlink" href="#content-and-topic-filtering" title="Permalink to this headline">¶</a></h4>
565
- <p id="index-9">As with all other subscriptions, bookmark subscriptions support content
566
- filtering.</p>
567
- <p>Bookmark subscriptions provide only messages from topics that are
568
- recorded in the transaction log. In other words, when a bookmark
569
- subscription uses a topic regular expression, only messages from topics
570
- that are recorded in the transaction log are provided to the
571
- subscription. This ensures that a bookmark subscription provides a
572
- consistent, repeatable stream of messages. The topics provided to the
573
- subscription are the same during replay, when only messages recorded in
574
- the transaction log are available, and after replay completes, when
575
- every publish to AMPS is available. This also ensures that a bookmark
576
- subscription that replays messages for a specific timeframe gets the
577
- same messages as bookmark subscribers that had active subscriptions
578
- during that timeframe.</p>
579
- <p>Content filtering is covered in greater detail in
580
- <a class="reference internal" href="amps_expressions.html#ug-amps-expressions"><span class="std std-ref">AMPS Expressions</span></a>.</p>
581
- </div>
582
- <div class="section" id="delivery-rate-control-for-bookmark-subscriptions">
583
- <h4>Delivery Rate Control for Bookmark Subscriptions<a class="headerlink" href="#delivery-rate-control-for-bookmark-subscriptions" title="Permalink to this headline">¶</a></h4>
584
- <p id="index-10">AMPS allows subscribers to specify the maximum delivery rate for
585
- messages delivered from a bookmark subscription. A subscriber specifies
586
- the maximum rate at which AMPS should deliver messages to the
587
- subscription. AMPS then limits the rate at which replay from the
588
- transaction log occurs so that the overall rate does not exceed the
589
- specified maximum. Rate control is not available for subscriptions
590
- that use the <code class="docutils literal"><span class="pre">live</span></code> option.</p>
591
- <p>To request rate control, a subscriber provides the <code class="docutils literal"><span class="pre">rate</span></code> option on
592
- the subscription. A rate can be specified in either messages per second,
593
- number of bytes delivered per second, or a multiple of the original
594
- delivery rate. For example, the following subscription option limits
595
- delivery to 1000 messages per second:</p>
596
- <div class="code highlight-default"><div class="highlight"><pre><span></span><span class="n">rate</span><span class="o">=</span><span class="mi">1000</span>
597
- </pre></div>
598
- </div>
599
- <p>To limit delivery to 500KB per second, a subscriber would provide this
600
- option:</p>
601
- <div class="code highlight-default"><div class="highlight"><pre><span></span><span class="n">rate</span><span class="o">=</span><span class="mi">500</span><span class="n">KB</span>
602
- </pre></div>
603
- </div>
604
- <p>To limit delivery to double the speed at which messages were originally
605
- published, a subscriber would provide this option:</p>
606
- <div class="code highlight-default"><div class="highlight"><pre><span></span><span class="n">rate</span><span class="o">=</span><span class="mi">2</span><span class="n">X</span>
607
- </pre></div>
608
- </div>
609
- <p>To limit delivery to half the speed at which messages were originally
610
- published, a subscriber would provide this option:</p>
611
- <div class="code highlight-default"><div class="highlight"><pre><span></span><span class="n">rate</span><span class="o">=</span><span class="mf">.5</span><span class="n">X</span>
612
- </pre></div>
613
- </div>
614
- <p>When using a <code class="docutils literal"><span class="pre">rate</span></code> that is a factor of the original replay speed,
615
- you may want AMPS to skip over long gaps. For example, you may want
616
- to do load testing by replaying several days&#8217; worth of operations
617
- at a <code class="docutils literal"><span class="pre">5x</span></code> multiplier. In that case, however, your load test does
618
- not need to be idle when there are gaps during which no messages are
619
- produced (for example, outside of trading hours or during holidays). For
620
- this situation, AMPS provides a <code class="docutils literal"><span class="pre">rate_max_gap</span></code> option that sets the maximum
621
- amount of time for a replay to wait to produce a message. For example,
622
- with an option string like:</p>
623
- <div class="code highlight-default"><div class="highlight"><pre><span></span><span class="n">rate</span><span class="o">=</span><span class="mi">5</span><span class="n">X</span><span class="p">,</span><span class="n">rate_max_gap</span><span class="o">=</span><span class="mi">10</span><span class="n">s</span>
624
- </pre></div>
625
- </div>
626
- <p>AMPS will attempt to produce messages at 5 times the original publish
627
- rate. In the event that there is a gap between messages of more than 50
628
- seconds in the original publish stream (that is, 10 seconds in the replay),
629
- AMPS will wait for 10 seconds and then &#8220;skip ahead&#8221; to the next message in
630
- the replay.</p>
631
- </div>
632
- <div class="section" id="pausing-and-resuming-bookmark-subscriptions">
633
- <h4>Pausing and Resuming Bookmark Subscriptions<a class="headerlink" href="#pausing-and-resuming-bookmark-subscriptions" title="Permalink to this headline">¶</a></h4>
634
- <p>As of version 5.0, AMPS offers the ability to pause a bookmark
635
- subscription. When a subscriber requests that AMPS pause the
636
- subscription, AMPS stops providing messages from the bookmark
637
- subscription, but does not remove the subscription. The subscriber can
638
- then resume the subscription, and AMPS will again begin providing
639
- messages from the subscription. While the subscription is paused, AMPS
640
- maintains a record of the current position in the transaction log, and
641
- begins replay from that point.</p>
642
- <p>This feature is most useful for starting replay of a number of
643
- subscriptions at the same point in the transaction log, and
644
- ensuring that those subscriptions are resumed together and
645
- progress at the same rate. This can be useful for testing purposes,
646
- or for reconstructing a sequence of events that involve multiple
647
- subscriptions.</p>
648
- <p>Notice that sending a <code class="docutils literal"><span class="pre">pause</span></code> command for a subscription does not
649
- affect messages that have already been sent to a client, and that
650
- bookmark replays will automatically pace themselves to the rate that
651
- a client is consuming messages. This means that, while <code class="docutils literal"><span class="pre">pause</span></code>
652
- can be used to request that AMPS temporarily halt a subscription, this
653
- option is not recommended to control message rate for a client
654
- that is oversubscribed.</p>
655
- <p id="index-11">An application may create a subscription in the paused state by including
656
- <code class="docutils literal"><span class="pre">pause</span></code> as an option on the initial <code class="docutils literal"><span class="pre">subscribe</span></code> command. To pause an
657
- active subscription, a subscriber sends a <code class="docutils literal"><span class="pre">subscribe</span></code> command with the
658
- existing subscription ID and the <code class="docutils literal"><span class="pre">pause</span></code> option. To resume a subscription,
659
- a subscriber sends a <code class="docutils literal"><span class="pre">subscribe</span></code> command with the subscription ID (or a
660
- comma-separated list of subscription IDs) and the <code class="docutils literal"><span class="pre">resume</span></code> option. The
661
- AMPS clients provide convenience functions or constants for the <code class="docutils literal"><span class="pre">pause</span></code>
662
- and <code class="docutils literal"><span class="pre">resume</span></code> options.</p>
663
- <p>AMPS allows a given client to pause or resume multiple subscriptions at
664
- once.</p>
665
- <p>When multiple bookmark subscriptions are resumed at the same time, AMPS
666
- will attempt to combine replay for the subscriptions. When AMPS can
667
- combine replay, AMPS will guarantee that messages across subscriptions
668
- are delivered from the same replay, which can help to preserve order
669
- across subscriptions. AMPS can combine subscriptions when they are
670
- delivered to the same client connection, were paused at the same
671
- bookmark, delivered at the same rate and are resumed with the same
672
- command. This feature can be useful for synchronizing message delivery
673
- across a number of subscriptions. When using <code class="docutils literal"><span class="pre">pause</span></code> and <code class="docutils literal"><span class="pre">resume</span></code>
674
- for this purpose, an application typically includes the <code class="docutils literal"><span class="pre">pause</span></code> option
675
- on a number of subscriptions when the subscriptions are created, and
676
- then resumes the subscriptions when the application is ready to begin
677
- the replay.</p>
678
- <p>Pausing a subscription stops AMPS from sending messages to the client
679
- once the pause command is processed. However, any messages already on
680
- the network, or in a network buffer on the client or the server will be
681
- delivered to the client.</p>
682
- <p>AMPS allows you to begin a subscription in the paused state by providing
683
- the <code class="docutils literal"><span class="pre">pause</span></code> option when creating the subscription.</p>
684
- <p>AMPS removes a paused subscription if the subscriber disconnects: for
685
- restarting a subscription across subscriber restarts, use the basic
686
- bookmark subscription features as described above.</p>
687
- </div>
688
- <div class="section" id="conflation-and-bookmark-subscriptions">
689
- <h4>Conflation and Bookmark Subscriptions<a class="headerlink" href="#conflation-and-bookmark-subscriptions" title="Permalink to this headline">¶</a></h4>
690
- <p>AMPS supports subscription conflation for bookmark subscriptions, as
691
- described in <a class="reference internal" href="pub_sub.html#ug-pub-sub-conflation"><span class="std std-ref">Conflated Subscriptions</span></a>.</p>
692
- <p>Conflation for bookmark subscriptions works the same way that conflation
693
- for regular subscriptions works. Messages from the replay are held by
694
- AMPS for the conflation interval. If during that interval the replay
695
- finds a message with the same <code class="docutils literal"><span class="pre">conflation_key</span></code> value, AMPS replaces the
696
- held message with the message from the replay. At the end of the
697
- conflation interval, AMPS provides the currently held message to the
698
- subscriber. During replay from the transaction log, the conflation interval
699
- refers to the timeline of the messages being replayed. That is,
700
- a conflation interval of <code class="docutils literal"><span class="pre">1s</span></code> will provide conflated messages with
701
- the same <code class="docutils literal"><span class="pre">conflation_key</span></code> value published during the same second,
702
- even if during transaction log replay the messages are replayed at a
703
- much higher rate.</p>
704
- <p>When using conflation, the bookmark provided on a message post conflation,
705
- is the bookmark for the <em>first conflated message during the interval</em>
706
- rather than the message that AMPS delivers at the end of the conflation interval.</p>
707
- </div>
708
- <div class="section" id="requesting-message-timestamps">
709
- <h4>Requesting Message Timestamps<a class="headerlink" href="#requesting-message-timestamps" title="Permalink to this headline">¶</a></h4>
710
- <p>Messages that are replayed from the transaction log will not have the
711
- timestamp field of the header populated by default. In order to request
712
- timestamps, provide the <code class="docutils literal"><span class="pre">timestamp</span></code> option when creating the subscription.</p>
713
- </div>
714
- </div>
715
- <div class="section" id="selecting-message-durability-options">
716
- <h3>Selecting Message Durability Options<a class="headerlink" href="#selecting-message-durability-options" title="Permalink to this headline">¶</a></h3>
717
- <p>AMPS supports two distinct options for specifying message durability. By
718
- default, messages are provided to a bookmark subscription when they are
719
- persisted to the local transaction log.</p>
720
- <p>Once replay from the transaction log is finished, AMPS sends messages to
721
- subscribers as the messages are processed. By default, AMPS waits until
722
- a message is persisted to the local transaction log before sending the
723
- message to subscribers. Since each message delivered is persisted,
724
- this approach ensures that the sequence of messages is consistent for
725
- this instance across client and server restarts, and that messages that
726
- are received by a subscriber will be available after a restart.</p>
727
- <p>AMPS provides options that a subscriber can use to change the point at
728
- which AMPS delivers messages once replay from the transaction log has
729
- finished.</p>
730
- <div class="section" id="using-the-fully-durable-option-for-bookmark-subscriptions">
731
- <h4>Using the &#8216;fully_durable&#8217; Option for Bookmark Subscriptions<a class="headerlink" href="#using-the-fully-durable-option-for-bookmark-subscriptions" title="Permalink to this headline">¶</a></h4>
732
- <p>With the <code class="docutils literal"><span class="pre">fully_durable</span></code> option, once replay from the transaction log
733
- is finished, AMPS sends a message to the subscriber only when the
734
- message has been persisted in the local transaction log and all
735
- synchronous downstream replication destinations have acknowledged the
736
- message. This option is useful for applications where processing of a
737
- message should not begin until more than one AMPS instance has persisted
738
- the message.</p>
739
- <p>This option will typically introduce more latency for incoming messages
740
- when those messages must be replicated. When this option is used and one
741
- or more of the synchronous downstream replication destinations that
742
- receives messages for this topic is offline, the instance will not
743
- deliver incoming messages until that destination comes back online or is
744
- downgraded to asynchronous replication.</p>
745
- </div>
746
- <div class="section" id="using-the-live-option-for-bookmark-subscriptions">
747
- <h4>Using the &#8216;live&#8217; Option for Bookmark Subscriptions<a class="headerlink" href="#using-the-live-option-for-bookmark-subscriptions" title="Permalink to this headline">¶</a></h4>
748
- <p>In some cases, reducing latency may be more important than consistency.
749
- To support these cases, AMPS provides a <code class="docutils literal"><span class="pre">live</span></code> option on bookmark
750
- subscriptions. For bookmark subscriptions that use the <code class="docutils literal"><span class="pre">live</span></code> option,
751
- once replay has finished, AMPS sends messages to subscribers <em>before</em>
752
- the message has been persisted. This can provide a small reduction in
753
- latency at the expense of increasing the risk of inconsistency upon
754
- failover. For example, if a publisher does not republish a message after
755
- failover, your application may receive a message that is not stored in
756
- the transaction log and that other applications have not received.</p>
757
- <div class="admonition warning">
758
- <p class="first admonition-title">Warning</p>
759
- <p class="last">The <code class="docutils literal"><span class="pre">live</span></code> option increases the risk of inconsistent data
760
- between your application and AMPS in the event of a failover. 60East
761
- recommends using this option only if the risk is acceptable and
762
- your application requires the small latency reduction this
763
- option provides.</p>
764
- </div>
765
- <p>Since the <code class="docutils literal"><span class="pre">live</span></code> option does not wait for messages to be persisted,
766
- subscriptions that use this option are subject to slow client offlining
767
- after replay from the transaction log is complete.</p>
768
- <p>The <code class="docutils literal"><span class="pre">rate</span></code>, <code class="docutils literal"><span class="pre">pause</span></code>, and <code class="docutils literal"><span class="pre">resume</span></code> options are not supported with
769
- the <code class="docutils literal"><span class="pre">live</span></code> option.</p>
770
- </div>
771
- </div>
772
- <div class="section" id="managing-journal-files">
773
- <h3>Managing Journal Files<a class="headerlink" href="#managing-journal-files" title="Permalink to this headline">¶</a></h3>
774
- <p id="index-12">The design of the journal files for the transaction log are such that
775
- AMPS can archive, compress and remove these files while AMPS is running.
776
- AMPS actions provide integrated administration for journal files, as
777
- described in <a class="reference internal" href="actions.html#ug-actions"><span class="std std-ref">Automating AMPS with Actions</span></a>.</p>
778
- <p id="index-13">Archiving a file copies the file to an archival directory, typically
779
- located on higher-capacity but higher-latency storage. Compressing a
780
- file compresses the file in place. Archived and compressed journal files
781
- are still accessible to clients for replay and for AMPS to use in
782
- rebuilding any SOW files that are damaged or removed.</p>
783
- <p>When defining a policy for archiving, compressing or removing files,
784
- keep in mind the amount of time for which clients will need to replay
785
- data. Once journal files have been deleted, the messages in those files
786
- are no longer available for clients to replay or for AMPS to use in
787
- recreating a SOW file. If journal files are removed, and a SOW file is
788
- retained, this means that the SOW may have data that is not in the
789
- transaction log.</p>
790
- <div class="admonition caution">
791
- <p class="first admonition-title">Caution</p>
792
- <p>While AMPS is running, the <code class="docutils literal"><span class="pre">amps-action-do-remove-journal</span></code>
793
- action is the only way to safely remove a journal file. This
794
- action correctly updates the internal AMPS data structures that
795
- refer to the journal file.</p>
796
- <p class="last">Likewise, the <code class="docutils literal"><span class="pre">amps-action-do-archive-journal</span></code> action is the
797
- only way to safely move a journal file to the archive directory
798
- while AMPS is running, and the <code class="docutils literal"><span class="pre">amps-action-do-compress-journal</span></code>
799
- action is the only way to safely compress journals while AMPS
800
- is running.</p>
801
- </div>
802
- <p>To determine how best to manage your journal files, consider your
803
- application&#8217;s access pattern to the recorded messages. Most applications
804
- have a period of time (often a day or a week) where historical data is
805
- in heavy use, and a period of time (often a week, or a month) where data
806
- is infrequently used. One common strategy is to create the journal files
807
- on high-throughput storage. The files are archived to slower,
808
- higher-capacity storage after a short period of time, compressed, and
809
- then removed after a longer period of time. This strategy preserves
810
- space on high-throughput storage, while still allowing the journals to
811
- be used. For example, if your applications frequently replay data for
812
- the last day, occasionally replay data older than the last week, and
813
- never request data older than one month, a management strategy that
814
- meets these needs would be to archive files after one day, compress them
815
- after a week, and remove them after one month. Archival, compression,
816
- and removal should be done using AMPS actions.</p>
817
- <div class="admonition caution">
818
- <p class="first admonition-title">Caution</p>
819
- <p class="last">If you remove journal files when AMPS is shut down, keep in mind
820
- that the removal of journal files must be sequential and <em>cannot</em>
821
- leave gaps in the remaining files. For example, say there
822
- are three journal files, <code class="docutils literal"><span class="pre">001</span></code>, <code class="docutils literal"><span class="pre">002</span></code> and <code class="docutils literal"><span class="pre">003</span></code>. If only
823
- <code class="docutils literal"><span class="pre">002</span></code> is removed, then the next AMPS restart could potentially
824
- overwrite the journal file <code class="docutils literal"><span class="pre">003</span></code>, causing an unrecoverable
825
- problem.</p>
826
- </div>
827
- <p>When using AMPS actions to manage journal files, AMPS ensures that all
828
- replays from a journal file are complete, all queue messages in that
829
- journal file have been delivered (and acknowledged, if required), and
830
- all messages from a journal file have been successfully replicated
831
- before removing the file.</p>
832
- <div class="section" id="reference-to-file-types">
833
- <h4>Reference to File Types<a class="headerlink" href="#reference-to-file-types" title="Permalink to this headline">¶</a></h4>
834
- <p>AMPS creates the following types of files as part of creating and
835
- managing the transaction log. Notice that this includes both files that
836
- contain messages (<em>journal files</em>) and a set of files created by AMPS
837
- to improve efficiency when the instance is restarting and recovering the
838
- state of the transaction log.</p>
839
- <p>The files for a specific instance are prefixed with the instance <code class="docutils literal"><span class="pre">Name</span></code>.
840
- An AMPS instance will only create files that are prefixed with the <code class="docutils literal"><span class="pre">Name</span></code>
841
- of the instance, and on startup will only recover files that are prefixed
842
- with the <code class="docutils literal"><span class="pre">Name</span></code> of the instance.</p>
843
- <table border="1" class="docutils" id="id1">
844
- <caption><span class="caption-text"><em>Files created by AMPS when a transaction log is configured</em></span><a class="headerlink" href="#id1" title="Permalink to this table">¶</a></caption>
845
- <colgroup>
846
- <col width="33%" />
847
- <col width="33%" />
848
- <col width="33%" />
849
- </colgroup>
850
- <thead valign="bottom">
851
- <tr class="row-odd"><th class="head">Extension</th>
852
- <th class="head">File Type</th>
853
- <th class="head">Description</th>
854
- </tr>
855
- </thead>
856
- <tbody valign="top">
857
- <tr class="row-even"><td><code class="docutils literal"><span class="pre">.journal</span></code></td>
858
- <td>Journal file</td>
859
- <td><p class="first">These files contain the messages that
860
- comprise the transaction log.</p>
861
- <p class="last">AMPS always writes new messages to an
862
- uncompressed journal file.</p>
863
- </td>
864
- </tr>
865
- <tr class="row-odd"><td><code class="docutils literal"><span class="pre">.journal.gz</span></code></td>
866
- <td>Compressed
867
- journal file</td>
868
- <td><p class="first">These files contain messages that
869
- comprise the transaction log.</p>
870
- <p class="last">These files have been compressed by AMPS as
871
- a result of the
872
- <code class="docutils literal"><span class="pre">amps-action-do-compress-journal</span></code>
873
- action. Other than being compressed, they
874
- are treated identically to uncompressed
875
- journal files.</p>
876
- </td>
877
- </tr>
878
- <tr class="row-even"><td><code class="docutils literal"><span class="pre">.index.gz</span></code></td>
879
- <td>Journal index
880
- file</td>
881
- <td><p class="first">These files are used during
882
- recovery to help AMPS quickly rebuild
883
- its references to the content of the
884
- transaction log without having to completely
885
- reprocess each file. Each index file contains
886
- index information for the corresponding
887
- journal file.</p>
888
- <p class="last">These files do not contain messages.</p>
889
- </td>
890
- </tr>
891
- <tr class="row-odd"><td><code class="docutils literal"><span class="pre">.topic.index</span></code></td>
892
- <td>Topic index
893
- file</td>
894
- <td><p class="first">These files are used during
895
- replay to help AMPS quickly locate messages
896
- for a given topic. Creating a topic index
897
- is optional, and is enabled through instance
898
- level <code class="docutils literal"><span class="pre">Tuning</span></code> configuration.</p>
899
- <p class="last">These files do not contain messages.</p>
900
- </td>
901
- </tr>
902
- <tr class="row-even"><td><code class="docutils literal"><span class="pre">.clients.ack</span></code></td>
903
- <td>Clients
904
- acknowledgment
905
- cache</td>
906
- <td><p class="first">Used during recovery to help AMPS quickly
907
- identify the last message persisted from
908
- each publisher without having to reprocess
909
- each journal file.</p>
910
- <p class="last">These files do not contain messages.</p>
911
- </td>
912
- </tr>
913
- <tr class="row-odd"><td><code class="docutils literal"><span class="pre">.queues.ack</span></code></td>
914
- <td>Queue
915
- acknowledgment
916
- cache</td>
917
- <td><p class="first">For each queue, this file stores the point in
918
- the transaction log for which that queue has
919
- been completely processed (that is, all
920
- messages prior to that point in the transaction
921
- log have been acknowledged or expired). On
922
- recovery, AMPS can begin restoring the state
923
- of the queue from that point rather than
924
- reprocessing the entire transaction log.</p>
925
- <p class="last">These files do not contain messages.</p>
926
- </td>
927
- </tr>
928
- <tr class="row-even"><td><code class="docutils literal"><span class="pre">.queue.cache</span></code></td>
929
- <td>Queue
930
- metadata
931
- cache</td>
932
- <td><p class="first">For a queue that specifies that metadata
933
- be cached in a file, this is the file that
934
- contains the cache. If this file is removed,
935
- the queue state will be restored from the
936
- transaction log (using the recovery point
937
- stored in the <code class="docutils literal"><span class="pre">queues.ack</span></code> file).</p>
938
- <p class="last">These files do not contain messages or message
939
- headers. They contain delivery state for
940
- messages in the queue and the location of those
941
- messages in the transaction log.</p>
942
- </td>
943
- </tr>
944
- </tbody>
945
- </table>
946
- </div>
947
- </div>
948
- </div>
949
- <div class="section" id="using-amps-grep-to-find-messages-in-the-transaction-log">
950
- <span id="txlog-finding-entries"></span><h2>Using amps-grep to Find Messages in the Transaction Log<a class="headerlink" href="#using-amps-grep-to-find-messages-in-the-transaction-log" title="Permalink to this headline">¶</a></h2>
951
- <p>The transaction log maintains a full record of the messages published
952
- to the topics recorded in the transaction log.</p>
953
- <p>Finding an exact sequence of messages recorded by an instance can
954
- be useful in troubleshooting issues with applications or AMPS itself.
955
- The simplest way to find a sequence of messages in the AMPS
956
- transaction log is by using the <code class="docutils literal"><span class="pre">amps-grep</span></code> utility.</p>
957
- <p>When used to find records in a transaction log, <code class="docutils literal"><span class="pre">amps-grep</span></code> also
958
- includes the header information for each journal file in the output,
959
- to help in cases where the intent of searching the journal is to
960
- be able to preserve a sequence of messages or analyze the journals
961
- further.</p>
962
- <div class="section" id="finding-messages-from-a-specific-client">
963
- <h3>Finding Messages from a Specific Client<a class="headerlink" href="#finding-messages-from-a-specific-client" title="Permalink to this headline">¶</a></h3>
964
- <p>When troubleshooting a publisher, it&#8217;s often useful to be able
965
- to see the set of messages published by a particular publisher.</p>
966
- <p>To find messages published from a specific publisher, use the
967
- following general pattern:</p>
968
- <pre>$amps-grep --client=<em>client_name</em> <em>journal_directory</em>/*.journal &gt; out.txt</pre><p>The <code class="docutils literal"><span class="pre">amps-grep</span></code> command calculates the set of possible client name hashes for the
969
- given client name and returns the transaction log entries for those messages.
970
- The Linux shell then writes those entries to the <code class="docutils literal"><span class="pre">out.txt</span></code> file.</p>
971
- </div>
972
- <div class="section" id="finding-messages-for-a-specific-topic">
973
- <h3>Finding Messages for a Specific Topic<a class="headerlink" href="#finding-messages-for-a-specific-topic" title="Permalink to this headline">¶</a></h3>
974
- <p>When troubleshooting message flow on a given topic, it&#8217;s often useful to be able
975
- to see the full set of messages published to that topic.</p>
976
- <p>To find messages published to a specific topic, provide the topic name to the <code class="docutils literal"><span class="pre">amps-grep</span></code>
977
- utility as follows:</p>
978
- <pre>$amps-grep <em>topic_name</em> <em>journal_directory</em>/*.journal &gt; out.txt</pre><p>The <code class="docutils literal"><span class="pre">amps-grep</span></code> command searches the journal files for all occurrences of the <em>topic_name</em> provided
979
- and returns the transaction log entries for those messages.</p>
980
- </div>
981
- <div class="section" id="finding-messages-with-specific-data">
982
- <h3>Finding Messages with Specific Data<a class="headerlink" href="#finding-messages-with-specific-data" title="Permalink to this headline">¶</a></h3>
983
- <p>In some cases, it can also be useful to find records with specific data. For example,
984
- this might be helpful to see the set of publishes to a specific key within a SOW topic,
985
- regardless of the publisher.</p>
986
- <p>To find messages with specific data, provide the data to the <code class="docutils literal"><span class="pre">amps-grep</span></code> utility as
987
- follows:</p>
988
- <pre>$amps-grep <em>data</em> <em>journal_directory</em>/*.journal &gt; out.txt</pre><p>The <code class="docutils literal"><span class="pre">amps-grep</span></code> command searches the journal files for all occurrences of the <em>data</em> provided
989
- and returns the transaction log entries for those messages.</p>
990
- </div>
991
- </div>
992
- </div>
993
-
994
-
995
- </div>
996
- </div>
997
- </div>
998
- <div class="clearer"></div>
999
- </div>
1000
- <div class="footer">
1001
- &copy;2023 60East Technologies, Inc. (version develop).
1002
-
1003
- |
1004
- Powered by <a href="http://sphinx-doc.org/">Sphinx 1.5.3</a>
1005
- &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.10</a>
1006
-
1007
- </div>
1008
-
1009
-
1010
-
1011
-
1012
- </body>
1013
- </html>