amps-python-client 5.3.4.1__zip → 5.3.4.3__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 (918) hide show
  1. amps-python-client-5.3.4.3/LICENSE +168 -0
  2. amps-python-client-5.3.4.3/PKG-INFO +112 -0
  3. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/ack-messages.doctree +0 -0
  4. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/content-messages.doctree +0 -0
  5. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/intro.doctree +0 -0
  6. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/logon.doctree +0 -0
  7. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/protocol-reference.doctree +0 -0
  8. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/publishing.doctree +0 -0
  9. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/query-delimiters.doctree +0 -0
  10. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/query-subscribe.doctree +0 -0
  11. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/removing.doctree +0 -0
  12. amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/utilities.doctree +0 -0
  13. amps-python-client-5.3.4.3/docs/command-reference/doctrees/environment.pickle +0 -0
  14. amps-python-client-5.3.4.3/docs/command-reference/doctrees/index.doctree +0 -0
  15. amps-python-client-5.3.4.3/docs/command-reference/html/.buildinfo +4 -0
  16. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/ack-messages.rst.txt +8 -0
  17. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/content-messages.rst.txt +8 -0
  18. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/intro.rst.txt +8 -0
  19. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/logon.rst.txt +8 -0
  20. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/protocol-reference.rst.txt +8 -0
  21. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/publishing.rst.txt +8 -0
  22. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/query-delimiters.rst.txt +8 -0
  23. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/query-subscribe.rst.txt +8 -0
  24. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/removing.rst.txt +8 -0
  25. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/utilities.rst.txt +8 -0
  26. amps-python-client-5.3.4.3/docs/command-reference/html/_sources/index.rst.txt +36 -0
  27. amps-python-client-5.3.4.3/docs/command-reference/html/_static/custom.css +161 -0
  28. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/ack-messages.html +95 -0
  29. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/content-messages.html +95 -0
  30. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/intro.html +95 -0
  31. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/logon.html +95 -0
  32. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/protocol-reference.html +93 -0
  33. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/publishing.html +95 -0
  34. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/query-delimiters.html +95 -0
  35. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/query-subscribe.html +95 -0
  36. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/removing.html +95 -0
  37. amps-python-client-5.3.4.3/docs/command-reference/html/chapters/utilities.html +95 -0
  38. amps-python-client-5.3.4.3/docs/command-reference/html/genindex.html +97 -0
  39. amps-python-client-5.3.4.3/docs/command-reference/html/index.html +98 -0
  40. amps-python-client-5.3.4.3/docs/command-reference/html/objects.inv +6 -0
  41. amps-python-client-5.3.4.3/docs/command-reference/html/search.html +107 -0
  42. amps-python-client-5.3.4.3/docs/command-reference/html/searchindex.js +1 -0
  43. amps-python-client-5.3.4.3/docs/html/.buildinfo +4 -0
  44. amps-python-client-5.3.4.3/docs/html/code.html +6851 -0
  45. amps-python-client-5.3.4.3/docs/html/genindex.html +1363 -0
  46. amps-python-client-5.3.4.3/docs/html/index.html +131 -0
  47. amps-python-client-5.3.4.3/docs/html/objects.inv +0 -0
  48. amps-python-client-5.3.4.3/docs/html/py-modindex.html +111 -0
  49. amps-python-client-5.3.4.3/docs/html/search.html +107 -0
  50. amps-python-client-5.3.4.3/docs/html/searchindex.js +1 -0
  51. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/advanced-topics.doctree +0 -0
  52. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/cpp-compiler-list.doctree +0 -0
  53. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/cpp-feature-table.doctree +0 -0
  54. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/creating-commands.doctree +0 -0
  55. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/deltas.doctree +0 -0
  56. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/error-handling.doctree +0 -0
  57. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/exceptions.doctree +0 -0
  58. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/first-program.doctree +0 -0
  59. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/high-availability.doctree +0 -0
  60. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/installing.doctree +0 -0
  61. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/introduction.doctree +0 -0
  62. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/moving-from-python-lite.doctree +0 -0
  63. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/performance-tips.doctree +0 -0
  64. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/queues.doctree +0 -0
  65. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/sow.doctree +0 -0
  66. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/subscriptions.doctree +0 -0
  67. amps-python-client-5.3.4.3/docs/python/doctrees/chapters/utilities.doctree +0 -0
  68. amps-python-client-5.3.4.3/docs/python/doctrees/environment.pickle +0 -0
  69. amps-python-client-5.3.4.3/docs/python/doctrees/index.doctree +0 -0
  70. amps-python-client-5.3.4.3/docs/python/html/.buildinfo +4 -0
  71. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/advanced-topics.rst.txt +398 -0
  72. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/cpp-feature-table.rst.txt +26 -0
  73. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/creating-commands.rst.txt +159 -0
  74. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/deltas.rst.txt +79 -0
  75. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/error-handling.rst.txt +481 -0
  76. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/exceptions.rst.txt +123 -0
  77. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/first-program.rst.txt +168 -0
  78. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/high-availability.rst.txt +879 -0
  79. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/installing.rst.txt +184 -0
  80. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/introduction.rst.txt +50 -0
  81. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/moving-from-python-lite.rst.txt +32 -0
  82. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/performance-tips.rst.txt +432 -0
  83. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/queues.rst.txt +282 -0
  84. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/sow.rst.txt +294 -0
  85. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/subscriptions.rst.txt +374 -0
  86. amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/utilities.rst.txt +214 -0
  87. amps-python-client-5.3.4.3/docs/python/html/_static/custom.css +161 -0
  88. amps-python-client-5.3.4.3/docs/python/html/chapters/advanced-topics.html +447 -0
  89. amps-python-client-5.3.4.3/docs/python/html/chapters/cpp-compiler-list.html +92 -0
  90. amps-python-client-5.3.4.3/docs/python/html/chapters/cpp-feature-table.html +156 -0
  91. amps-python-client-5.3.4.3/docs/python/html/chapters/creating-commands.html +2882 -0
  92. amps-python-client-5.3.4.3/docs/python/html/chapters/deltas.html +169 -0
  93. amps-python-client-5.3.4.3/docs/python/html/chapters/error-handling.html +745 -0
  94. amps-python-client-5.3.4.3/docs/python/html/chapters/exceptions.html +266 -0
  95. amps-python-client-5.3.4.3/docs/python/html/chapters/first-program.html +526 -0
  96. amps-python-client-5.3.4.3/docs/python/html/chapters/high-availability.html +1017 -0
  97. amps-python-client-5.3.4.3/docs/python/html/chapters/installing.html +264 -0
  98. amps-python-client-5.3.4.3/docs/python/html/chapters/introduction.html +245 -0
  99. amps-python-client-5.3.4.3/docs/python/html/chapters/moving-from-python-lite.html +118 -0
  100. amps-python-client-5.3.4.3/docs/python/html/chapters/performance-tips.html +499 -0
  101. amps-python-client-5.3.4.3/docs/python/html/chapters/queues.html +352 -0
  102. amps-python-client-5.3.4.3/docs/python/html/chapters/sow.html +383 -0
  103. amps-python-client-5.3.4.3/docs/python/html/chapters/subscriptions.html +535 -0
  104. amps-python-client-5.3.4.3/docs/python/html/chapters/utilities.html +302 -0
  105. amps-python-client-5.3.4.3/docs/python/html/genindex.html +351 -0
  106. amps-python-client-5.3.4.3/docs/python/html/index.html +382 -0
  107. amps-python-client-5.3.4.3/docs/python/html/objects.inv +0 -0
  108. amps-python-client-5.3.4.3/docs/python/html/search.html +107 -0
  109. amps-python-client-5.3.4.3/docs/python/html/searchindex.js +1 -0
  110. amps-python-client-5.3.4.3/docs/python-quickstart/doctrees/chapters/crankitup.doctree +0 -0
  111. amps-python-client-5.3.4.3/docs/python-quickstart/doctrees/chapters/equipment.doctree +0 -0
  112. amps-python-client-5.3.4.3/docs/python-quickstart/doctrees/environment.pickle +0 -0
  113. amps-python-client-5.3.4.3/docs/python-quickstart/doctrees/index.doctree +0 -0
  114. amps-python-client-5.3.4.3/docs/python-quickstart/html/.buildinfo +4 -0
  115. amps-python-client-5.3.4.3/docs/python-quickstart/html/_static/custom.css +161 -0
  116. amps-python-client-5.3.4.3/docs/python-quickstart/html/chapters/crankitup.html +271 -0
  117. amps-python-client-5.3.4.3/docs/python-quickstart/html/chapters/equipment.html +105 -0
  118. amps-python-client-5.3.4.3/docs/python-quickstart/html/genindex.html +97 -0
  119. amps-python-client-5.3.4.3/docs/python-quickstart/html/index.html +381 -0
  120. amps-python-client-5.3.4.3/docs/python-quickstart/html/objects.inv +0 -0
  121. amps-python-client-5.3.4.3/docs/python-quickstart/html/search.html +107 -0
  122. amps-python-client-5.3.4.3/docs/python-quickstart/html/searchindex.js +1 -0
  123. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/acks.doctree +0 -0
  124. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/actions.doctree +0 -0
  125. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/amps-statistics.doctree +0 -0
  126. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/amps_expressions.doctree +0 -0
  127. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/amps_functions.doctree +0 -0
  128. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/auxiliary_modules.doctree +0 -0
  129. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/config-file-shortcuts.doctree +0 -0
  130. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/conflated_topics.doctree +0 -0
  131. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/constructing-fields.doctree +0 -0
  132. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/daemon.doctree +0 -0
  133. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/delta.doctree +0 -0
  134. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/distribution.doctree +0 -0
  135. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/enrichment.doctree +0 -0
  136. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/events.doctree +0 -0
  137. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/file_format_versions.doctree +0 -0
  138. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/glossary.doctree +0 -0
  139. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/ha.doctree +0 -0
  140. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/installing_and_starting.doctree +0 -0
  141. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/intro.doctree +0 -0
  142. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/logging.doctree +0 -0
  143. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/messageTypes.doctree +0 -0
  144. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/monitoring.doctree +0 -0
  145. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/oof.doctree +0 -0
  146. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/operation.doctree +0 -0
  147. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/pub_sub.doctree +0 -0
  148. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/queues.doctree +0 -0
  149. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/replication.doctree +0 -0
  150. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/securing.doctree +0 -0
  151. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/sow.doctree +0 -0
  152. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/sow_queries.doctree +0 -0
  153. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/spark.doctree +0 -0
  154. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/transports.doctree +0 -0
  155. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/troubleshooting.doctree +0 -0
  156. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/txlog.doctree +0 -0
  157. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/usecases.doctree +0 -0
  158. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/utilities.doctree +0 -0
  159. amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/views.doctree +0 -0
  160. amps-python-client-5.3.4.3/docs/user-guide/doctrees/environment.pickle +0 -0
  161. amps-python-client-5.3.4.3/docs/user-guide/doctrees/index.doctree +0 -0
  162. amps-python-client-5.3.4.3/docs/user-guide/html/.buildinfo +4 -0
  163. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/acks.rst.txt +8 -0
  164. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/actions.rst.txt +8 -0
  165. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/amps-statistics.rst.txt +8 -0
  166. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/amps_expressions.rst.txt +8 -0
  167. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/amps_functions.rst.txt +8 -0
  168. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/auxiliary_modules.rst.txt +8 -0
  169. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/config-file-shortcuts.rst.txt +8 -0
  170. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/conflated_topics.rst.txt +8 -0
  171. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/constructing-fields.rst.txt +8 -0
  172. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/daemon.rst.txt +8 -0
  173. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/delta.rst.txt +8 -0
  174. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/distribution.rst.txt +8 -0
  175. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/enrichment.rst.txt +8 -0
  176. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/events.rst.txt +8 -0
  177. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/file_format_versions.rst.txt +8 -0
  178. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/glossary.rst.txt +8 -0
  179. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/ha.rst.txt +8 -0
  180. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/installing_and_starting.rst.txt +8 -0
  181. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/intro.rst.txt +8 -0
  182. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/logging.rst.txt +8 -0
  183. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/messageTypes.rst.txt +8 -0
  184. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/monitoring.rst.txt +8 -0
  185. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/oof.rst.txt +8 -0
  186. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/operation.rst.txt +8 -0
  187. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/pub_sub.rst.txt +8 -0
  188. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/queues.rst.txt +8 -0
  189. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/replication.rst.txt +8 -0
  190. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/securing.rst.txt +8 -0
  191. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/sow.rst.txt +8 -0
  192. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/sow_queries.rst.txt +8 -0
  193. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/transports.rst.txt +8 -0
  194. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/troubleshooting.rst.txt +8 -0
  195. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/txlog.rst.txt +8 -0
  196. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/usecases.rst.txt +8 -0
  197. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/utilities.rst.txt +8 -0
  198. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/views.rst.txt +8 -0
  199. amps-python-client-5.3.4.3/docs/user-guide/html/_sources/index.rst.txt +62 -0
  200. amps-python-client-5.3.4.3/docs/user-guide/html/_static/custom.css +161 -0
  201. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/acks.html +94 -0
  202. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/actions.html +94 -0
  203. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/amps-statistics.html +94 -0
  204. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/amps_expressions.html +94 -0
  205. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/amps_functions.html +94 -0
  206. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/auxiliary_modules.html +94 -0
  207. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/config-file-shortcuts.html +94 -0
  208. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/conflated_topics.html +94 -0
  209. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/constructing-fields.html +94 -0
  210. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/daemon.html +94 -0
  211. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/delta.html +94 -0
  212. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/distribution.html +94 -0
  213. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/enrichment.html +94 -0
  214. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/events.html +94 -0
  215. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/file_format_versions.html +94 -0
  216. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/glossary.html +92 -0
  217. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/ha.html +94 -0
  218. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/installing_and_starting.html +94 -0
  219. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/intro.html +94 -0
  220. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/logging.html +94 -0
  221. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/messageTypes.html +94 -0
  222. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/monitoring.html +94 -0
  223. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/oof.html +94 -0
  224. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/operation.html +94 -0
  225. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/pub_sub.html +94 -0
  226. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/queues.html +94 -0
  227. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/replication.html +94 -0
  228. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/securing.html +94 -0
  229. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/sow.html +94 -0
  230. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/sow_queries.html +94 -0
  231. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/spark.html +819 -0
  232. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/transports.html +94 -0
  233. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/troubleshooting.html +94 -0
  234. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/txlog.html +94 -0
  235. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/usecases.html +94 -0
  236. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/utilities.html +94 -0
  237. amps-python-client-5.3.4.3/docs/user-guide/html/chapters/views.html +94 -0
  238. amps-python-client-5.3.4.3/docs/user-guide/html/genindex.html +133 -0
  239. amps-python-client-5.3.4.3/docs/user-guide/html/index.html +96 -0
  240. amps-python-client-5.3.4.3/docs/user-guide/html/objects.inv +0 -0
  241. amps-python-client-5.3.4.3/docs/user-guide/html/search.html +106 -0
  242. amps-python-client-5.3.4.3/docs/user-guide/html/searchindex.js +1 -0
  243. amps-python-client-5.3.4.3/include/ampspy_bookmarkstore.hpp +63 -0
  244. amps-python-client-5.3.4.3/include/ampspy_compat.h +63 -0
  245. amps-python-client-5.3.4.3/include/ampspy_defs.hpp +181 -0
  246. amps-python-client-5.3.4.3/include/ampspy_recoverypointadapter.hpp +52 -0
  247. amps-python-client-5.3.4.3/include/ampspy_shims.hpp +113 -0
  248. amps-python-client-5.3.4.3/include/ampspy_type_object.hpp +242 -0
  249. amps-python-client-5.3.4.3/include/ampspy_types.hpp +1139 -0
  250. amps-python-client-5.3.4.3/include/ampspyver.h +30 -0
  251. amps-python-client-5.3.4.3/index.html +66 -0
  252. amps-python-client-5.3.4.3/samples/AMPSConsolePublisher.py +59 -0
  253. amps-python-client-5.3.4.3/samples/AMPSConsoleSubscriber.py +63 -0
  254. amps-python-client-5.3.4.3/samples/AMPSFIXBuilderPublisher.py +71 -0
  255. amps-python-client-5.3.4.3/samples/AMPSFIXShredderSubscriber.py +69 -0
  256. amps-python-client-5.3.4.3/samples/AMPSNVFIXBuilderPublisher.py +71 -0
  257. amps-python-client-5.3.4.3/samples/AMPSNVFIXShredderSubscriber.py +67 -0
  258. amps-python-client-5.3.4.3/samples/AMPSPublishForReplay.py +81 -0
  259. amps-python-client-5.3.4.3/samples/AMPSQueueConsumer.py +69 -0
  260. amps-python-client-5.3.4.3/samples/AMPSQueuePublisher.py +59 -0
  261. amps-python-client-5.3.4.3/samples/AMPSSOWConsolePublisher.py +67 -0
  262. amps-python-client-5.3.4.3/samples/AMPSSOWConsoleSubscriber.py +77 -0
  263. amps-python-client-5.3.4.3/samples/AMPSSOWandSubscribeConsoleSubscriber.py +79 -0
  264. amps-python-client-5.3.4.3/samples/AMPSSOWandSubscribeWithOOF.py +108 -0
  265. amps-python-client-5.3.4.3/samples/AMPSSubscribeForReplay.py +128 -0
  266. amps-python-client-5.3.4.3/samples/AMPSUpdateForOOF.py +123 -0
  267. amps-python-client-5.3.4.3/samples/CompositeMessagePublisher.py +84 -0
  268. amps-python-client-5.3.4.3/samples/CompositeMessageSubscriber.py +87 -0
  269. amps-python-client-5.3.4.3/samples/RandomServerChooser.py +66 -0
  270. amps-python-client-5.3.4.3/samples/sample.xml +335 -0
  271. amps-python-client-5.3.4.3/setup.py +210 -0
  272. amps-python-client-5.3.4.3/setup_amps.py +94 -0
  273. amps-python-client-5.3.4.3/src/ampspy_shims.cpp +214 -0
  274. amps-python-client-5.3.4.3/src/ampspy_type_object.cpp +495 -0
  275. amps-python-client-5.3.4.3/src/authenticator.cpp +128 -0
  276. amps-python-client-5.3.4.3/src/bookmarkstore.cpp +246 -0
  277. amps-python-client-5.3.4.3/src/client.cpp +2648 -0
  278. amps-python-client-5.3.4.3/src/client_docs.h +1210 -0
  279. amps-python-client-5.3.4.3/src/cmessagehandler.cpp +161 -0
  280. amps-python-client-5.3.4.3/src/command.cpp +164 -0
  281. amps-python-client-5.3.4.3/src/command_docs.h +274 -0
  282. amps-python-client-5.3.4.3/src/compositemessagebuilder.cpp +113 -0
  283. amps-python-client-5.3.4.3/src/compositemessageparser.cpp +151 -0
  284. amps-python-client-5.3.4.3/src/conflatingrecoverypointadapter.cpp +197 -0
  285. amps-python-client-5.3.4.3/src/cpp/include/amps/BlockPublishStore.hpp +2050 -0
  286. amps-python-client-5.3.4.3/src/cpp/include/amps/BlockStore.hpp +674 -0
  287. amps-python-client-5.3.4.3/src/cpp/include/amps/BookmarkStore.hpp +542 -0
  288. amps-python-client-5.3.4.3/src/cpp/include/amps/Buffer.hpp +214 -0
  289. amps-python-client-5.3.4.3/src/cpp/include/amps/CompositeMessageBuilder.hpp +174 -0
  290. amps-python-client-5.3.4.3/src/cpp/include/amps/CompositeMessageParser.hpp +151 -0
  291. amps-python-client-5.3.4.3/src/cpp/include/amps/DefaultServerChooser.hpp +162 -0
  292. amps-python-client-5.3.4.3/src/cpp/include/amps/Field.hpp +723 -0
  293. amps-python-client-5.3.4.3/src/cpp/include/amps/HAClient.hpp +370 -0
  294. amps-python-client-5.3.4.3/src/cpp/include/amps/HAClientImpl.hpp +460 -0
  295. amps-python-client-5.3.4.3/src/cpp/include/amps/HybridPublishStore.hpp +481 -0
  296. amps-python-client-5.3.4.3/src/cpp/include/amps/LoggedBookmarkStore.hpp +1256 -0
  297. amps-python-client-5.3.4.3/src/cpp/include/amps/MMapBookmarkStore.hpp +1283 -0
  298. amps-python-client-5.3.4.3/src/cpp/include/amps/MMapStoreBuffer.hpp +297 -0
  299. amps-python-client-5.3.4.3/src/cpp/include/amps/MemoryBookmarkStore.hpp +1628 -0
  300. amps-python-client-5.3.4.3/src/cpp/include/amps/MemoryPublishStore.hpp +66 -0
  301. amps-python-client-5.3.4.3/src/cpp/include/amps/MemoryStoreBuffer.hpp +247 -0
  302. amps-python-client-5.3.4.3/src/cpp/include/amps/MemorySubscriptionManager.hpp +850 -0
  303. amps-python-client-5.3.4.3/src/cpp/include/amps/Message.hpp +1827 -0
  304. amps-python-client-5.3.4.3/src/cpp/include/amps/MessageRouter.hpp +647 -0
  305. amps-python-client-5.3.4.3/src/cpp/include/amps/PublishStore.hpp +158 -0
  306. amps-python-client-5.3.4.3/src/cpp/include/amps/ReconnectDelayStrategy.hpp +106 -0
  307. amps-python-client-5.3.4.3/src/cpp/include/amps/ReconnectDelayStrategyImpl.hpp +317 -0
  308. amps-python-client-5.3.4.3/src/cpp/include/amps/RecoveryPoint.hpp +323 -0
  309. amps-python-client-5.3.4.3/src/cpp/include/amps/RecoveryPointAdapter.hpp +501 -0
  310. amps-python-client-5.3.4.3/src/cpp/include/amps/RingBookmarkStore.hpp +669 -0
  311. amps-python-client-5.3.4.3/src/cpp/include/amps/SOWRecoveryPointAdapter.hpp +494 -0
  312. amps-python-client-5.3.4.3/src/cpp/include/amps/ServerChooser.hpp +156 -0
  313. amps-python-client-5.3.4.3/src/cpp/include/amps/ServerChooserImpl.hpp +95 -0
  314. amps-python-client-5.3.4.3/src/cpp/include/amps/amps.h +815 -0
  315. amps-python-client-5.3.4.3/src/cpp/include/amps/amps_impl.h +220 -0
  316. amps-python-client-5.3.4.3/src/cpp/include/amps/amps_ssl.h +78 -0
  317. amps-python-client-5.3.4.3/src/cpp/include/amps/ampscrc.hpp +208 -0
  318. amps-python-client-5.3.4.3/src/cpp/include/amps/ampsplusplus.hpp +8846 -0
  319. amps-python-client-5.3.4.3/src/cpp/include/amps/ampsuri.h +84 -0
  320. amps-python-client-5.3.4.3/src/cpp/include/amps/ampsver.h +41 -0
  321. amps-python-client-5.3.4.3/src/cpp/include/amps/ampsver.h.in +41 -0
  322. amps-python-client-5.3.4.3/src/cpp/include/amps/constants.hpp +194 -0
  323. amps-python-client-5.3.4.3/src/cpp/include/amps/util.hpp +1722 -0
  324. amps-python-client-5.3.4.3/src/cpp/src/amps_protocol.c +693 -0
  325. amps-python-client-5.3.4.3/src/cpp/src/amps_ssl.c +565 -0
  326. amps-python-client-5.3.4.3/src/cpp/src/atfork.c +484 -0
  327. amps-python-client-5.3.4.3/src/cpp/src/client.c +498 -0
  328. amps-python-client-5.3.4.3/src/cpp/src/message.c +837 -0
  329. amps-python-client-5.3.4.3/src/cpp/src/message_generated.h +611 -0
  330. amps-python-client-5.3.4.3/src/cpp/src/tcp.c +1683 -0
  331. amps-python-client-5.3.4.3/src/cpp/src/tcps.c +2005 -0
  332. amps-python-client-5.3.4.3/src/cpp/src/transports.c +129 -0
  333. amps-python-client-5.3.4.3/src/cpp/src/unix.c +1063 -0
  334. amps-python-client-5.3.4.3/src/cpp/src/uri.c +301 -0
  335. amps-python-client-5.3.4.3/src/exponentialdelaystrategy.cpp +131 -0
  336. amps-python-client-5.3.4.3/src/failedwritehandler.cpp +116 -0
  337. amps-python-client-5.3.4.3/src/fixbuilder.cpp +146 -0
  338. amps-python-client-5.3.4.3/src/fixeddelaystrategy.cpp +115 -0
  339. amps-python-client-5.3.4.3/src/fixshredder.cpp +105 -0
  340. amps-python-client-5.3.4.3/src/fixshredder_docs.h +38 -0
  341. amps-python-client-5.3.4.3/src/haclient.cpp +691 -0
  342. amps-python-client-5.3.4.3/src/haclient_docs.h +200 -0
  343. amps-python-client-5.3.4.3/src/hybridpublishstore.cpp +137 -0
  344. amps-python-client-5.3.4.3/src/hybridpublishstore_docs.h +31 -0
  345. amps-python-client-5.3.4.3/src/memorybookmarkstore.cpp +373 -0
  346. amps-python-client-5.3.4.3/src/memorybookmarkstore_docs.h +39 -0
  347. amps-python-client-5.3.4.3/src/memorypublishstore.cpp +160 -0
  348. amps-python-client-5.3.4.3/src/memorypublishstore_docs.h +32 -0
  349. amps-python-client-5.3.4.3/src/message.cpp +765 -0
  350. amps-python-client-5.3.4.3/src/message_docs.h +306 -0
  351. amps-python-client-5.3.4.3/src/messagestream.cpp +630 -0
  352. amps-python-client-5.3.4.3/src/messagestream_docs.h +45 -0
  353. amps-python-client-5.3.4.3/src/mmapbookmarkstore.cpp +422 -0
  354. amps-python-client-5.3.4.3/src/nvfixbuilder.cpp +160 -0
  355. amps-python-client-5.3.4.3/src/nvfixbuilder_docs.h +35 -0
  356. amps-python-client-5.3.4.3/src/nvfixshredder.cpp +99 -0
  357. amps-python-client-5.3.4.3/src/nvfixshredder_docs.h +43 -0
  358. amps-python-client-5.3.4.3/src/publishstore.cpp +183 -0
  359. amps-python-client-5.3.4.3/src/raw_wrapper.cpp +765 -0
  360. amps-python-client-5.3.4.3/src/reason.cpp +71 -0
  361. amps-python-client-5.3.4.3/src/recoverypoint.cpp +135 -0
  362. amps-python-client-5.3.4.3/src/recoverypointadapter.cpp +171 -0
  363. amps-python-client-5.3.4.3/src/ringbookmarkstore.cpp +360 -0
  364. amps-python-client-5.3.4.3/src/serverchooser.cpp +245 -0
  365. amps-python-client-5.3.4.3/src/serverchooser_docs.h +41 -0
  366. amps-python-client-5.3.4.3/src/sowrecoverypointadapter.cpp +248 -0
  367. amps-python-client-5.3.4.3/src/store.cpp +62 -0
  368. amps-python-client-5.3.4.3/src/versioninfo.cpp +175 -0
  369. amps-python-client-5.3.4.1/LICENSE +0 -157
  370. amps-python-client-5.3.4.1/PKG-INFO +0 -112
  371. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/ack-messages.doctree +0 -0
  372. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/content-messages.doctree +0 -0
  373. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/intro.doctree +0 -0
  374. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/logon.doctree +0 -0
  375. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/protocol-reference.doctree +0 -0
  376. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/publishing.doctree +0 -0
  377. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/query-delimiters.doctree +0 -0
  378. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/query-subscribe.doctree +0 -0
  379. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/removing.doctree +0 -0
  380. amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/utilities.doctree +0 -0
  381. amps-python-client-5.3.4.1/docs/command-reference/doctrees/environment.pickle +0 -0
  382. amps-python-client-5.3.4.1/docs/command-reference/doctrees/index.doctree +0 -0
  383. amps-python-client-5.3.4.1/docs/command-reference/html/.buildinfo +0 -4
  384. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/ack-messages.rst.txt +0 -32
  385. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/content-messages.rst.txt +0 -27
  386. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/intro.rst.txt +0 -43
  387. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/logon.rst.txt +0 -231
  388. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/protocol-reference.rst.txt +0 -1474
  389. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/publishing.rst.txt +0 -25
  390. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/query-delimiters.rst.txt +0 -12
  391. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/query-subscribe.rst.txt +0 -23
  392. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/removing.rst.txt +0 -6
  393. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/utilities.rst.txt +0 -13
  394. amps-python-client-5.3.4.1/docs/command-reference/html/_sources/index.rst.txt +0 -56
  395. amps-python-client-5.3.4.1/docs/command-reference/html/_static/custom.css +0 -192
  396. amps-python-client-5.3.4.1/docs/command-reference/html/_static/custom.css.backup +0 -161
  397. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/ack-messages.html +0 -417
  398. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/content-messages.html +0 -417
  399. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/intro.html +0 -126
  400. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/logon.html +0 -295
  401. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/protocol-reference.html +0 -1190
  402. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/publishing.html +0 -436
  403. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/query-delimiters.html +0 -173
  404. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/query-subscribe.html +0 -2123
  405. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/removing.html +0 -299
  406. amps-python-client-5.3.4.1/docs/command-reference/html/chapters/utilities.html +0 -287
  407. amps-python-client-5.3.4.1/docs/command-reference/html/genindex.html +0 -97
  408. amps-python-client-5.3.4.1/docs/command-reference/html/index.html +0 -138
  409. amps-python-client-5.3.4.1/docs/command-reference/html/objects.inv +0 -0
  410. amps-python-client-5.3.4.1/docs/command-reference/html/search.html +0 -107
  411. amps-python-client-5.3.4.1/docs/command-reference/html/searchindex.js +0 -1
  412. amps-python-client-5.3.4.1/docs/html/.buildinfo +0 -4
  413. amps-python-client-5.3.4.1/docs/html/code.html +0 -6503
  414. amps-python-client-5.3.4.1/docs/html/genindex.html +0 -1361
  415. amps-python-client-5.3.4.1/docs/html/index.html +0 -131
  416. amps-python-client-5.3.4.1/docs/html/objects.inv +0 -0
  417. amps-python-client-5.3.4.1/docs/html/py-modindex.html +0 -111
  418. amps-python-client-5.3.4.1/docs/html/search.html +0 -107
  419. amps-python-client-5.3.4.1/docs/html/searchindex.js +0 -1
  420. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/advanced-topics.doctree +0 -0
  421. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/cpp-compiler-list.doctree +0 -0
  422. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/cpp-feature-table.doctree +0 -0
  423. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/creating-commands.doctree +0 -0
  424. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/deltas.doctree +0 -0
  425. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/error-handling.doctree +0 -0
  426. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/exceptions.doctree +0 -0
  427. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/first-program.doctree +0 -0
  428. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/high-availability.doctree +0 -0
  429. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/installing.doctree +0 -0
  430. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/introduction.doctree +0 -0
  431. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/moving-from-python-lite.doctree +0 -0
  432. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/performance-tips.doctree +0 -0
  433. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/queues.doctree +0 -0
  434. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/sow.doctree +0 -0
  435. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/subscriptions.doctree +0 -0
  436. amps-python-client-5.3.4.1/docs/python/doctrees/chapters/utilities.doctree +0 -0
  437. amps-python-client-5.3.4.1/docs/python/doctrees/environment.pickle +0 -0
  438. amps-python-client-5.3.4.1/docs/python/doctrees/index.doctree +0 -0
  439. amps-python-client-5.3.4.1/docs/python/html/.buildinfo +0 -4
  440. amps-python-client-5.3.4.1/docs/python/html/_images/caution.svg +0 -25
  441. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/advanced-topics.rst.txt +0 -398
  442. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/cpp-feature-table.rst.txt +0 -26
  443. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/creating-commands.rst.txt +0 -159
  444. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/deltas.rst.txt +0 -79
  445. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/error-handling.rst.txt +0 -482
  446. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/exceptions.rst.txt +0 -128
  447. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/first-program.rst.txt +0 -142
  448. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/high-availability.rst.txt +0 -876
  449. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/installing.rst.txt +0 -184
  450. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/introduction.rst.txt +0 -50
  451. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/moving-from-python-lite.rst.txt +0 -32
  452. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/performance-tips.rst.txt +0 -434
  453. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/queues.rst.txt +0 -282
  454. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/sow.rst.txt +0 -292
  455. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/subscriptions.rst.txt +0 -374
  456. amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/utilities.rst.txt +0 -214
  457. amps-python-client-5.3.4.1/docs/python/html/_static/custom.css +0 -192
  458. amps-python-client-5.3.4.1/docs/python/html/_static/custom.css.backup +0 -161
  459. amps-python-client-5.3.4.1/docs/python/html/chapters/advanced-topics.html +0 -447
  460. amps-python-client-5.3.4.1/docs/python/html/chapters/cpp-compiler-list.html +0 -92
  461. amps-python-client-5.3.4.1/docs/python/html/chapters/cpp-feature-table.html +0 -156
  462. amps-python-client-5.3.4.1/docs/python/html/chapters/creating-commands.html +0 -2837
  463. amps-python-client-5.3.4.1/docs/python/html/chapters/deltas.html +0 -169
  464. amps-python-client-5.3.4.1/docs/python/html/chapters/error-handling.html +0 -746
  465. amps-python-client-5.3.4.1/docs/python/html/chapters/exceptions.html +0 -272
  466. amps-python-client-5.3.4.1/docs/python/html/chapters/first-program.html +0 -499
  467. amps-python-client-5.3.4.1/docs/python/html/chapters/high-availability.html +0 -1014
  468. amps-python-client-5.3.4.1/docs/python/html/chapters/installing.html +0 -264
  469. amps-python-client-5.3.4.1/docs/python/html/chapters/introduction.html +0 -245
  470. amps-python-client-5.3.4.1/docs/python/html/chapters/moving-from-python-lite.html +0 -118
  471. amps-python-client-5.3.4.1/docs/python/html/chapters/performance-tips.html +0 -499
  472. amps-python-client-5.3.4.1/docs/python/html/chapters/queues.html +0 -352
  473. amps-python-client-5.3.4.1/docs/python/html/chapters/sow.html +0 -381
  474. amps-python-client-5.3.4.1/docs/python/html/chapters/subscriptions.html +0 -535
  475. amps-python-client-5.3.4.1/docs/python/html/chapters/utilities.html +0 -302
  476. amps-python-client-5.3.4.1/docs/python/html/genindex.html +0 -351
  477. amps-python-client-5.3.4.1/docs/python/html/index.html +0 -380
  478. amps-python-client-5.3.4.1/docs/python/html/objects.inv +0 -0
  479. amps-python-client-5.3.4.1/docs/python/html/search.html +0 -107
  480. amps-python-client-5.3.4.1/docs/python/html/searchindex.js +0 -1
  481. amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/chapters/crankitup.doctree +0 -0
  482. amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/chapters/equipment.doctree +0 -0
  483. amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/environment.pickle +0 -0
  484. amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/index.doctree +0 -0
  485. amps-python-client-5.3.4.1/docs/python-quickstart/html/.buildinfo +0 -4
  486. amps-python-client-5.3.4.1/docs/python-quickstart/html/_static/custom.css +0 -192
  487. amps-python-client-5.3.4.1/docs/python-quickstart/html/_static/custom.css.backup +0 -161
  488. amps-python-client-5.3.4.1/docs/python-quickstart/html/chapters/crankitup.html +0 -271
  489. amps-python-client-5.3.4.1/docs/python-quickstart/html/chapters/equipment.html +0 -105
  490. amps-python-client-5.3.4.1/docs/python-quickstart/html/genindex.html +0 -97
  491. amps-python-client-5.3.4.1/docs/python-quickstart/html/index.html +0 -382
  492. amps-python-client-5.3.4.1/docs/python-quickstart/html/objects.inv +0 -0
  493. amps-python-client-5.3.4.1/docs/python-quickstart/html/search.html +0 -107
  494. amps-python-client-5.3.4.1/docs/python-quickstart/html/searchindex.js +0 -1
  495. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/acks.doctree +0 -0
  496. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/actions.doctree +0 -0
  497. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps-statistics.doctree +0 -0
  498. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps_expressions.doctree +0 -0
  499. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps_functions.doctree +0 -0
  500. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/auxiliary_modules.doctree +0 -0
  501. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/config-file-shortcuts.doctree +0 -0
  502. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/conflated_topics.doctree +0 -0
  503. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/constructing-fields.doctree +0 -0
  504. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/daemon.doctree +0 -0
  505. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/delta.doctree +0 -0
  506. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/distribution.doctree +0 -0
  507. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/enrichment.doctree +0 -0
  508. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/events.doctree +0 -0
  509. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/file_format_versions.doctree +0 -0
  510. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/glossary.doctree +0 -0
  511. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/ha.doctree +0 -0
  512. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/installing_and_starting.doctree +0 -0
  513. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/intro.doctree +0 -0
  514. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/logging.doctree +0 -0
  515. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/messageTypes.doctree +0 -0
  516. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/monitoring.doctree +0 -0
  517. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/oof.doctree +0 -0
  518. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/operation.doctree +0 -0
  519. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/pub_sub.doctree +0 -0
  520. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/queues.doctree +0 -0
  521. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/replication.doctree +0 -0
  522. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/securing.doctree +0 -0
  523. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/sow.doctree +0 -0
  524. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/sow_queries.doctree +0 -0
  525. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/spark.doctree +0 -0
  526. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/transports.doctree +0 -0
  527. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/troubleshooting.doctree +0 -0
  528. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/txlog.doctree +0 -0
  529. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/usecases.doctree +0 -0
  530. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/utilities.doctree +0 -0
  531. amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/views.doctree +0 -0
  532. amps-python-client-5.3.4.1/docs/user-guide/doctrees/environment.pickle +0 -0
  533. amps-python-client-5.3.4.1/docs/user-guide/doctrees/index.doctree +0 -0
  534. amps-python-client-5.3.4.1/docs/user-guide/html/.buildinfo +0 -4
  535. amps-python-client-5.3.4.1/docs/user-guide/html/_images/AMPS-Queues-Intro.svg +0 -1330
  536. amps-python-client-5.3.4.1/docs/user-guide/html/_images/GeoRepl.png +0 -0
  537. amps-python-client-5.3.4.1/docs/user-guide/html/_images/HA_async_ack.png +0 -0
  538. amps-python-client-5.3.4.1/docs/user-guide/html/_images/HA_sync_ack.png +0 -0
  539. amps-python-client-5.3.4.1/docs/user-guide/html/_images/Hot-Hot-Replication.png +0 -0
  540. amps-python-client-5.3.4.1/docs/user-guide/html/_images/MessageOrdering.svg +0 -235
  541. amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF5.png +0 -0
  542. amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF6.png +0 -0
  543. amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF7.png +0 -0
  544. amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF8.png +0 -0
  545. amps-python-client-5.3.4.1/docs/user-guide/html/_images/PubSub1.svg +0 -1
  546. amps-python-client-5.3.4.1/docs/user-guide/html/_images/PubSub2.svg +0 -1
  547. amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWAndSubscribeAndReplace.svg +0 -684
  548. amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWQuery1.svg +0 -402
  549. amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWQuery2.svg +0 -505
  550. amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig1.svg +0 -1
  551. amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig2.svg +0 -1
  552. amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig3.svg +0 -1
  553. amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig4.svg +0 -1
  554. amps-python-client-5.3.4.1/docs/user-guide/html/_images/caution.png +0 -0
  555. amps-python-client-5.3.4.1/docs/user-guide/html/_images/caution.svg +0 -25
  556. amps-python-client-5.3.4.1/docs/user-guide/html/_images/chicago_group.png +0 -0
  557. amps-python-client-5.3.4.1/docs/user-guide/html/_images/delta_original_messages.png +0 -0
  558. amps-python-client-5.3.4.1/docs/user-guide/html/_images/delta_update_message.png +0 -0
  559. amps-python-client-5.3.4.1/docs/user-guide/html/_images/important.png +0 -0
  560. amps-python-client-5.3.4.1/docs/user-guide/html/_images/important.svg +0 -25
  561. amps-python-client-5.3.4.1/docs/user-guide/html/_images/inline_view_conflation.svg +0 -1
  562. amps-python-client-5.3.4.1/docs/user-guide/html/_images/paginated_subs_pub.png +0 -0
  563. amps-python-client-5.3.4.1/docs/user-guide/html/_images/paginated_subs_sub.png +0 -0
  564. amps-python-client-5.3.4.1/docs/user-guide/html/_images/queue_usage_overview.svg +0 -627
  565. amps-python-client-5.3.4.1/docs/user-guide/html/_images/replication_hub.png +0 -0
  566. amps-python-client-5.3.4.1/docs/user-guide/html/_images/replication_scenario_with_ha.png +0 -0
  567. amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_overview_1.svg +0 -248
  568. amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_overview_2.svg +0 -183
  569. amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_update_sequence.svg +0 -1
  570. amps-python-client-5.3.4.1/docs/user-guide/html/_images/tip.png +0 -0
  571. amps-python-client-5.3.4.1/docs/user-guide/html/_images/tip.svg +0 -31
  572. amps-python-client-5.3.4.1/docs/user-guide/html/_images/warning.png +0 -0
  573. amps-python-client-5.3.4.1/docs/user-guide/html/_images/warning.svg +0 -23
  574. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/acks.rst.txt +0 -232
  575. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/actions.rst.txt +0 -111
  576. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps-statistics.rst.txt +0 -358
  577. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps_expressions.rst.txt +0 -83
  578. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps_functions.rst.txt +0 -11
  579. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/auxiliary_modules.rst.txt +0 -86
  580. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/config-file-shortcuts.rst.txt +0 -9
  581. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/conflated_topics.rst.txt +0 -111
  582. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/constructing-fields.rst.txt +0 -269
  583. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/daemon.rst.txt +0 -232
  584. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/delta.rst.txt +0 -556
  585. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/distribution.rst.txt +0 -186
  586. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/enrichment.rst.txt +0 -191
  587. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/events.rst.txt +0 -39
  588. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/file_format_versions.rst.txt +0 -203
  589. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/glossary.rst.txt +0 -101
  590. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/ha.rst.txt +0 -465
  591. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/installing_and_starting.rst.txt +0 -23
  592. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/intro.rst.txt +0 -116
  593. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/logging.rst.txt +0 -34
  594. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/messageTypes.rst.txt +0 -1398
  595. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/monitoring.rst.txt +0 -326
  596. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/oof.rst.txt +0 -312
  597. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/operation.rst.txt +0 -27
  598. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/pub_sub.rst.txt +0 -49
  599. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/queues.rst.txt +0 -1351
  600. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/replication.rst.txt +0 -1228
  601. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/securing.rst.txt +0 -657
  602. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/sow.rst.txt +0 -57
  603. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/sow_queries.rst.txt +0 -25
  604. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/transports.rst.txt +0 -291
  605. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/troubleshooting.rst.txt +0 -517
  606. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/txlog.rst.txt +0 -62
  607. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/usecases.rst.txt +0 -21
  608. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/utilities.rst.txt +0 -62
  609. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/views.rst.txt +0 -175
  610. amps-python-client-5.3.4.1/docs/user-guide/html/_sources/index.rst.txt +0 -110
  611. amps-python-client-5.3.4.1/docs/user-guide/html/_static/custom.css +0 -192
  612. amps-python-client-5.3.4.1/docs/user-guide/html/_static/custom.css.backup +0 -161
  613. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/acks.html +0 -289
  614. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/actions.html +0 -3782
  615. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps-statistics.html +0 -439
  616. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps_expressions.html +0 -1552
  617. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps_functions.html +0 -1626
  618. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/auxiliary_modules.html +0 -2548
  619. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/config-file-shortcuts.html +0 -508
  620. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/conflated_topics.html +0 -328
  621. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/constructing-fields.html +0 -447
  622. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/daemon.html +0 -295
  623. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/delta.html +0 -609
  624. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/distribution.html +0 -246
  625. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/enrichment.html +0 -264
  626. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/events.html +0 -449
  627. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/file_format_versions.html +0 -229
  628. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/glossary.html +0 -215
  629. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/ha.html +0 -978
  630. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/installing_and_starting.html +0 -357
  631. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/intro.html +0 -572
  632. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/logging.html +0 -972
  633. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/messageTypes.html +0 -1280
  634. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/monitoring.html +0 -718
  635. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/oof.html +0 -341
  636. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/operation.html +0 -1515
  637. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/pub_sub.html +0 -934
  638. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/queues.html +0 -1767
  639. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/replication.html +0 -1777
  640. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/securing.html +0 -697
  641. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/sow.html +0 -1038
  642. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/sow_queries.html +0 -621
  643. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/spark.html +0 -819
  644. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/transports.html +0 -352
  645. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/troubleshooting.html +0 -530
  646. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/txlog.html +0 -1013
  647. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/usecases.html +0 -288
  648. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/utilities.html +0 -133
  649. amps-python-client-5.3.4.1/docs/user-guide/html/chapters/views.html +0 -1120
  650. amps-python-client-5.3.4.1/docs/user-guide/html/genindex.html +0 -1261
  651. amps-python-client-5.3.4.1/docs/user-guide/html/index.html +0 -163
  652. amps-python-client-5.3.4.1/docs/user-guide/html/objects.inv +0 -0
  653. amps-python-client-5.3.4.1/docs/user-guide/html/search.html +0 -106
  654. amps-python-client-5.3.4.1/docs/user-guide/html/searchindex.js +0 -1
  655. amps-python-client-5.3.4.1/include/ampspy_bookmarkstore.hpp +0 -63
  656. amps-python-client-5.3.4.1/include/ampspy_compat.h +0 -63
  657. amps-python-client-5.3.4.1/include/ampspy_defs.hpp +0 -181
  658. amps-python-client-5.3.4.1/include/ampspy_recoverypointadapter.hpp +0 -52
  659. amps-python-client-5.3.4.1/include/ampspy_shims.hpp +0 -113
  660. amps-python-client-5.3.4.1/include/ampspy_type_object.hpp +0 -242
  661. amps-python-client-5.3.4.1/include/ampspy_types.hpp +0 -1139
  662. amps-python-client-5.3.4.1/include/ampspyver.h +0 -30
  663. amps-python-client-5.3.4.1/index.html +0 -66
  664. amps-python-client-5.3.4.1/samples/AMPSConsolePublisher.py +0 -59
  665. amps-python-client-5.3.4.1/samples/AMPSConsoleSubscriber.py +0 -63
  666. amps-python-client-5.3.4.1/samples/AMPSFIXBuilderPublisher.py +0 -71
  667. amps-python-client-5.3.4.1/samples/AMPSFIXShredderSubscriber.py +0 -69
  668. amps-python-client-5.3.4.1/samples/AMPSNVFIXBuilderPublisher.py +0 -71
  669. amps-python-client-5.3.4.1/samples/AMPSNVFIXShredderSubscriber.py +0 -67
  670. amps-python-client-5.3.4.1/samples/AMPSPublishForReplay.py +0 -81
  671. amps-python-client-5.3.4.1/samples/AMPSQueueConsumer.py +0 -69
  672. amps-python-client-5.3.4.1/samples/AMPSQueuePublisher.py +0 -59
  673. amps-python-client-5.3.4.1/samples/AMPSSOWConsolePublisher.py +0 -67
  674. amps-python-client-5.3.4.1/samples/AMPSSOWConsoleSubscriber.py +0 -77
  675. amps-python-client-5.3.4.1/samples/AMPSSOWandSubscribeConsoleSubscriber.py +0 -79
  676. amps-python-client-5.3.4.1/samples/AMPSSOWandSubscribeWithOOF.py +0 -108
  677. amps-python-client-5.3.4.1/samples/AMPSSubscribeForReplay.py +0 -128
  678. amps-python-client-5.3.4.1/samples/AMPSUpdateForOOF.py +0 -123
  679. amps-python-client-5.3.4.1/samples/CompositeMessagePublisher.py +0 -84
  680. amps-python-client-5.3.4.1/samples/CompositeMessageSubscriber.py +0 -87
  681. amps-python-client-5.3.4.1/samples/RandomServerChooser.py +0 -41
  682. amps-python-client-5.3.4.1/samples/sample.xml +0 -335
  683. amps-python-client-5.3.4.1/setup.py +0 -209
  684. amps-python-client-5.3.4.1/setup_amps.py +0 -94
  685. amps-python-client-5.3.4.1/src/ampspy_shims.cpp +0 -203
  686. amps-python-client-5.3.4.1/src/ampspy_type_object.cpp +0 -484
  687. amps-python-client-5.3.4.1/src/authenticator.cpp +0 -128
  688. amps-python-client-5.3.4.1/src/bookmarkstore.cpp +0 -238
  689. amps-python-client-5.3.4.1/src/client.cpp +0 -2430
  690. amps-python-client-5.3.4.1/src/client_docs.h +0 -956
  691. amps-python-client-5.3.4.1/src/cmessagehandler.cpp +0 -151
  692. amps-python-client-5.3.4.1/src/command.cpp +0 -164
  693. amps-python-client-5.3.4.1/src/command_docs.h +0 -194
  694. amps-python-client-5.3.4.1/src/compositemessagebuilder.cpp +0 -111
  695. amps-python-client-5.3.4.1/src/compositemessageparser.cpp +0 -146
  696. amps-python-client-5.3.4.1/src/conflatingrecoverypointadapter.cpp +0 -194
  697. amps-python-client-5.3.4.1/src/cpp/include/amps/BlockPublishStore.hpp +0 -2053
  698. amps-python-client-5.3.4.1/src/cpp/include/amps/BlockStore.hpp +0 -677
  699. amps-python-client-5.3.4.1/src/cpp/include/amps/BookmarkStore.hpp +0 -542
  700. amps-python-client-5.3.4.1/src/cpp/include/amps/Buffer.hpp +0 -214
  701. amps-python-client-5.3.4.1/src/cpp/include/amps/CompositeMessageBuilder.hpp +0 -174
  702. amps-python-client-5.3.4.1/src/cpp/include/amps/CompositeMessageParser.hpp +0 -151
  703. amps-python-client-5.3.4.1/src/cpp/include/amps/DefaultServerChooser.hpp +0 -162
  704. amps-python-client-5.3.4.1/src/cpp/include/amps/Field.hpp +0 -719
  705. amps-python-client-5.3.4.1/src/cpp/include/amps/HAClient.hpp +0 -370
  706. amps-python-client-5.3.4.1/src/cpp/include/amps/HAClientImpl.hpp +0 -460
  707. amps-python-client-5.3.4.1/src/cpp/include/amps/HybridPublishStore.hpp +0 -481
  708. amps-python-client-5.3.4.1/src/cpp/include/amps/LoggedBookmarkStore.hpp +0 -1255
  709. amps-python-client-5.3.4.1/src/cpp/include/amps/MMapBookmarkStore.hpp +0 -1283
  710. amps-python-client-5.3.4.1/src/cpp/include/amps/MMapStoreBuffer.hpp +0 -290
  711. amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryBookmarkStore.hpp +0 -1622
  712. amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryPublishStore.hpp +0 -66
  713. amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryStoreBuffer.hpp +0 -244
  714. amps-python-client-5.3.4.1/src/cpp/include/amps/MemorySubscriptionManager.hpp +0 -850
  715. amps-python-client-5.3.4.1/src/cpp/include/amps/Message.hpp +0 -1819
  716. amps-python-client-5.3.4.1/src/cpp/include/amps/MessageRouter.hpp +0 -618
  717. amps-python-client-5.3.4.1/src/cpp/include/amps/PublishStore.hpp +0 -158
  718. amps-python-client-5.3.4.1/src/cpp/include/amps/ReconnectDelayStrategy.hpp +0 -106
  719. amps-python-client-5.3.4.1/src/cpp/include/amps/ReconnectDelayStrategyImpl.hpp +0 -317
  720. amps-python-client-5.3.4.1/src/cpp/include/amps/RecoveryPoint.hpp +0 -323
  721. amps-python-client-5.3.4.1/src/cpp/include/amps/RecoveryPointAdapter.hpp +0 -501
  722. amps-python-client-5.3.4.1/src/cpp/include/amps/RingBookmarkStore.hpp +0 -669
  723. amps-python-client-5.3.4.1/src/cpp/include/amps/SOWRecoveryPointAdapter.hpp +0 -490
  724. amps-python-client-5.3.4.1/src/cpp/include/amps/ServerChooser.hpp +0 -145
  725. amps-python-client-5.3.4.1/src/cpp/include/amps/ServerChooserImpl.hpp +0 -95
  726. amps-python-client-5.3.4.1/src/cpp/include/amps/amps.h +0 -775
  727. amps-python-client-5.3.4.1/src/cpp/include/amps/amps_impl.h +0 -204
  728. amps-python-client-5.3.4.1/src/cpp/include/amps/amps_ssl.h +0 -78
  729. amps-python-client-5.3.4.1/src/cpp/include/amps/ampscrc.hpp +0 -210
  730. amps-python-client-5.3.4.1/src/cpp/include/amps/ampsplusplus.hpp +0 -8817
  731. amps-python-client-5.3.4.1/src/cpp/include/amps/ampsuri.h +0 -84
  732. amps-python-client-5.3.4.1/src/cpp/include/amps/ampsver.h +0 -41
  733. amps-python-client-5.3.4.1/src/cpp/include/amps/ampsver.h.in +0 -41
  734. amps-python-client-5.3.4.1/src/cpp/include/amps/constants.hpp +0 -194
  735. amps-python-client-5.3.4.1/src/cpp/include/amps/util.hpp +0 -1692
  736. amps-python-client-5.3.4.1/src/cpp/src/amps_protocol.c +0 -688
  737. amps-python-client-5.3.4.1/src/cpp/src/amps_ssl.c +0 -489
  738. amps-python-client-5.3.4.1/src/cpp/src/atfork.c +0 -446
  739. amps-python-client-5.3.4.1/src/cpp/src/client.c +0 -483
  740. amps-python-client-5.3.4.1/src/cpp/src/message.c +0 -837
  741. amps-python-client-5.3.4.1/src/cpp/src/message_generated.h +0 -611
  742. amps-python-client-5.3.4.1/src/cpp/src/tcp.c +0 -1489
  743. amps-python-client-5.3.4.1/src/cpp/src/tcps.c +0 -1894
  744. amps-python-client-5.3.4.1/src/cpp/src/transports.c +0 -123
  745. amps-python-client-5.3.4.1/src/cpp/src/unix.c +0 -984
  746. amps-python-client-5.3.4.1/src/cpp/src/uri.c +0 -301
  747. amps-python-client-5.3.4.1/src/exponentialdelaystrategy.cpp +0 -137
  748. amps-python-client-5.3.4.1/src/failedwritehandler.cpp +0 -116
  749. amps-python-client-5.3.4.1/src/fixbuilder.cpp +0 -146
  750. amps-python-client-5.3.4.1/src/fixeddelaystrategy.cpp +0 -114
  751. amps-python-client-5.3.4.1/src/fixshredder.cpp +0 -105
  752. amps-python-client-5.3.4.1/src/fixshredder_docs.h +0 -38
  753. amps-python-client-5.3.4.1/src/haclient.cpp +0 -691
  754. amps-python-client-5.3.4.1/src/haclient_docs.h +0 -132
  755. amps-python-client-5.3.4.1/src/hybridpublishstore.cpp +0 -137
  756. amps-python-client-5.3.4.1/src/hybridpublishstore_docs.h +0 -31
  757. amps-python-client-5.3.4.1/src/memorybookmarkstore.cpp +0 -373
  758. amps-python-client-5.3.4.1/src/memorybookmarkstore_docs.h +0 -39
  759. amps-python-client-5.3.4.1/src/memorypublishstore.cpp +0 -160
  760. amps-python-client-5.3.4.1/src/memorypublishstore_docs.h +0 -32
  761. amps-python-client-5.3.4.1/src/message.cpp +0 -765
  762. amps-python-client-5.3.4.1/src/message_docs.h +0 -306
  763. amps-python-client-5.3.4.1/src/messagestream.cpp +0 -623
  764. amps-python-client-5.3.4.1/src/messagestream_docs.h +0 -45
  765. amps-python-client-5.3.4.1/src/mmapbookmarkstore.cpp +0 -422
  766. amps-python-client-5.3.4.1/src/nvfixbuilder.cpp +0 -160
  767. amps-python-client-5.3.4.1/src/nvfixbuilder_docs.h +0 -33
  768. amps-python-client-5.3.4.1/src/nvfixshredder.cpp +0 -99
  769. amps-python-client-5.3.4.1/src/nvfixshredder_docs.h +0 -39
  770. amps-python-client-5.3.4.1/src/publishstore.cpp +0 -183
  771. amps-python-client-5.3.4.1/src/raw_wrapper.cpp +0 -756
  772. amps-python-client-5.3.4.1/src/reason.cpp +0 -71
  773. amps-python-client-5.3.4.1/src/recoverypoint.cpp +0 -135
  774. amps-python-client-5.3.4.1/src/recoverypointadapter.cpp +0 -171
  775. amps-python-client-5.3.4.1/src/ringbookmarkstore.cpp +0 -360
  776. amps-python-client-5.3.4.1/src/serverchooser.cpp +0 -245
  777. amps-python-client-5.3.4.1/src/serverchooser_docs.h +0 -39
  778. amps-python-client-5.3.4.1/src/sowrecoverypointadapter.cpp +0 -248
  779. amps-python-client-5.3.4.1/src/store.cpp +0 -62
  780. amps-python-client-5.3.4.1/src/versioninfo.cpp +0 -175
  781. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/HISTORY +0 -0
  782. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/README.md +0 -0
  783. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/ajax-loader.gif +0 -0
  784. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/alabaster.css +0 -0
  785. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/basic.css +0 -0
  786. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/comment-bright.png +0 -0
  787. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/comment-close.png +0 -0
  788. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/comment.png +0 -0
  789. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/doctools.js +0 -0
  790. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/down-pressed.png +0 -0
  791. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/down.png +0 -0
  792. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/file.png +0 -0
  793. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/flag_logo.png +0 -0
  794. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/flag_logo.svg +0 -0
  795. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/jquery-3.1.0.js +0 -0
  796. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/jquery.js +0 -0
  797. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/minus.png +0 -0
  798. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/plus.png +0 -0
  799. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/pygments.css +0 -0
  800. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/searchtools.js +0 -0
  801. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/underscore-1.3.1.js +0 -0
  802. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/underscore.js +0 -0
  803. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/up-pressed.png +0 -0
  804. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/up.png +0 -0
  805. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/websupport.js +0 -0
  806. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_sources/code.rst.txt +0 -0
  807. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_sources/index.rst.txt +0 -0
  808. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/ajax-loader.gif +0 -0
  809. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/basic.css +0 -0
  810. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/classic.css +0 -0
  811. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/comment-bright.png +0 -0
  812. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/comment-close.png +0 -0
  813. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/comment.png +0 -0
  814. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/default.css +0 -0
  815. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/doctools.js +0 -0
  816. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/down-pressed.png +0 -0
  817. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/down.png +0 -0
  818. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/file.png +0 -0
  819. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/jquery-3.1.0.js +0 -0
  820. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/jquery.js +0 -0
  821. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/minus.png +0 -0
  822. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/plus.png +0 -0
  823. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/pygments.css +0 -0
  824. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/searchtools.js +0 -0
  825. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/sidebar.js +0 -0
  826. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/underscore-1.3.1.js +0 -0
  827. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/underscore.js +0 -0
  828. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/up-pressed.png +0 -0
  829. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/up.png +0 -0
  830. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/websupport.js +0 -0
  831. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/caution.png +0 -0
  832. {amps-python-client-5.3.4.1/docs/command-reference → amps-python-client-5.3.4.3/docs/python}/html/_images/caution.svg +0 -0
  833. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/connection_string.svg +0 -0
  834. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/important.png +0 -0
  835. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/important.svg +0 -0
  836. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/tip.png +0 -0
  837. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/tip.svg +0 -0
  838. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/warning.png +0 -0
  839. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_sources/chapters/cpp-compiler-list.rst.txt +0 -0
  840. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_sources/index.rst.txt +0 -0
  841. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/ajax-loader.gif +0 -0
  842. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/alabaster.css +0 -0
  843. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/basic.css +0 -0
  844. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/comment-bright.png +0 -0
  845. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/comment-close.png +0 -0
  846. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/comment.png +0 -0
  847. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/doctools.js +0 -0
  848. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/down-pressed.png +0 -0
  849. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/down.png +0 -0
  850. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/file.png +0 -0
  851. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/flag_logo.png +0 -0
  852. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/flag_logo.svg +0 -0
  853. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/jquery-3.1.0.js +0 -0
  854. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/jquery.js +0 -0
  855. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/minus.png +0 -0
  856. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/plus.png +0 -0
  857. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/pygments.css +0 -0
  858. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/searchtools.js +0 -0
  859. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/underscore-1.3.1.js +0 -0
  860. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/underscore.js +0 -0
  861. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/up-pressed.png +0 -0
  862. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/up.png +0 -0
  863. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/websupport.js +0 -0
  864. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_sources/chapters/crankitup.rst.txt +0 -0
  865. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_sources/chapters/equipment.rst.txt +0 -0
  866. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_sources/index.rst.txt +0 -0
  867. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/ajax-loader.gif +0 -0
  868. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/alabaster.css +0 -0
  869. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/basic.css +0 -0
  870. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/comment-bright.png +0 -0
  871. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/comment-close.png +0 -0
  872. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/comment.png +0 -0
  873. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/doctools.js +0 -0
  874. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/down-pressed.png +0 -0
  875. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/down.png +0 -0
  876. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/file.png +0 -0
  877. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/flag_logo.png +0 -0
  878. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/flag_logo.svg +0 -0
  879. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/jquery-3.1.0.js +0 -0
  880. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/jquery.js +0 -0
  881. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/minus.png +0 -0
  882. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/plus.png +0 -0
  883. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/pygments.css +0 -0
  884. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/searchtools.js +0 -0
  885. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/underscore-1.3.1.js +0 -0
  886. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/underscore.js +0 -0
  887. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/up-pressed.png +0 -0
  888. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/up.png +0 -0
  889. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/websupport.js +0 -0
  890. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/resources/custom.css +0 -0
  891. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/resources/flag_logo.svg +0 -0
  892. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_sources/chapters/spark.rst.txt +0 -0
  893. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/ajax-loader.gif +0 -0
  894. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/alabaster.css +0 -0
  895. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/basic.css +0 -0
  896. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/comment-bright.png +0 -0
  897. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/comment-close.png +0 -0
  898. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/comment.png +0 -0
  899. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/doctools.js +0 -0
  900. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/down-pressed.png +0 -0
  901. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/down.png +0 -0
  902. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/file.png +0 -0
  903. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/flag_logo.png +0 -0
  904. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/flag_logo.svg +0 -0
  905. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/jquery-3.1.0.js +0 -0
  906. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/jquery.js +0 -0
  907. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/minus.png +0 -0
  908. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/plus.png +0 -0
  909. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/pygments.css +0 -0
  910. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/searchtools.js +0 -0
  911. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/underscore-1.3.1.js +0 -0
  912. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/underscore.js +0 -0
  913. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/up-pressed.png +0 -0
  914. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/up.png +0 -0
  915. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/websupport.js +0 -0
  916. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/src/cpp/include/amps/amps_generated.h +0 -0
  917. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/src/cpp/src/amps_protocol_generated.h +0 -0
  918. {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/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>