Uploaded image for project: 'SAFe Program'
  1. SAFe Program
  2. SP-625

Complete the implementation of the pub/sub mechanism in Webjive

Change Owns to Parent OfsSet start and due date...
    XporterXMLWordPrintable

Details

    • Obs Mgt & Controls
    • 2
    • 2
    • 5
    • Team_BUTTONS
    • Sprint 5
    • 5.6
    • PI22 - UNCOVERED

    • Team_BUTTONS goal_O2 webjive

    Description

      An initial version of pub/sub has been implemented during PI#4, this will need to be completed during PI#5. This includes developing test suites that cover the new implementation.

      Benefit

      We need to integrate code produced by external people (not adhering to our DoD) so that it does not become legacy code and increases our technical debt.  

      Acceptance Criteria

      • I expect that there is test suite of component level end-to-end tests whose SUT is TangoGQL; I expect all its endopoints being covered in happy paths;
      • I expect also that such tests cover the newly developed code, namely the pub/sub mechanism; in happy paths and sad paths.
      • I expect that unit and module tests excercise TangoGQL so that the following defects are reproduced and possibly fixed (in some cases tests should be used to provide evidence that TangoGQL is not the cause of the problem). Regarding fixing defects, of course the more we fix the better it is.
        • There appears to be an issue where a mixed case representation of attribute names is being turned into a lower case representation - this may be related to the Tango (ZMQ) channel falling over with errors implying that the health check thread is either not getting a response or is getting an error response.
        • Forwarded attributes (where one device refers to an attribute on another device) seem to be problematic in that they always produce errors. 
        • Once one subscribed attribute fails - they all fail.
        • When you visit a device all the attributes for the device are automatically subscribed and they are not unsubscribed when you move to a new device.
        • You can’t currently subscribe to more than one attribute without the channel becoming unstable - either immediately or shortly afterwards the health check times out throwing an error on the Tango ZMQ channel.
        • If events are produced at a frequency higher than 50ms from tango the pub-sub mechanism fails. (Tango allows events as frequently as 5ms).
        • In the Devices tab, open a device with polled attribute(s?) and open the Attributes list of the device. You should observe pub/sub working but refreshing the page should show that pub/sub has stopped working.
      • Fixing of bugs whose failures are identified with the above tests will be fixed later on, not in PI5.
      • We need some better logging (to the browser console) to let us understand if there is a problem and what is its cause/source: software error, tango systems, wrong user input.

      Tests that are out of scope:

      • handling errors in webjive suite (tangogql should transfer error messages to the frontend, and the frontend should handle them nicely: but this is out of scope for the moment).

       

      Attachments

        Issue Links

          Structure

            Activity

              People

                g.brajnik Brajnik, Giorgio
                a.bridger Bridger, Alan
                Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Feature Progress

                  Story Point Burn-up: (100.00%)

                  Feature Estimate: 2.0

                  IssuesStory Points
                  To Do00.0
                  In Progress   00.0
                  Complete1539.0
                  Total1539.0

                  Dates

                    Created:
                    Updated:
                    Resolved:

                    Structure Helper Panel