Uploaded image for project: 'Apache Knox'
  1. Apache Knox
  2. KNOX-2638

Shiro propererties are missing after topology deployment

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • None
    • None
    • None

    Description

      STR:

      1. Have an existing topology (test.xml), see if blockSemicolon/blockBackslash/blockNonAscii are in the get topology output:
      curl -u admin:admin-password -k -X GET
      https://localhost:8443/gateway/admin/api/v1/topologies/test

      grep blockSemicolon
      <name>main.invalidRequest.blockSemicolon</name>
      2. Deploy a new topology file (test2.xml)
      cp ./conf/topologies/test.xml ./conf/topologies/test2.xml 

      3. blockSemicolon/blockBackslash/blockNonAscii are no longer in the orignial test.xml output:

      curl -u admin:admin-password  -k -X GET https://localhost:8443/gateway/admin/api/v1/topologies/test | grep  blockSemicolon 

      This also causes some flakiness in tests like GatewayAdminTopologyFuncTest.

       

      The reason why these shiro properties are missing is because we only add these after a topology deployment to the in memory representation of a topology. When we deploy a new topology we also reload all the existing topologies but only redeploy the newly added one.

       

      @Override
      public void reloadTopologies() {
        try {
          synchronized (this) {
            Map<File, Topology> oldTopologies = topologies;
            Map<File, Topology> newTopologies = loadTopologies(topologiesDirectory); // <= parse everything from disk
            List<TopologyEvent> events = createChangeEvents(oldTopologies, newTopologies);
            topologies = newTopologies;
            notifyChangeListeners(events); // <= this will redeploy the new topology and add the shiro properties, but those will be missing from all other existing topologies
          }
        } catch (Exception e) {
          // Maybe it makes sense to throw exception
          log.failedToReloadTopologies(e);
        }
      } 

       

       

      Attachments

        Issue Links

          Activity

            People

              amagyar Attila Magyar
              amagyar Attila Magyar
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h
                  1h