Version 46 (modified by ibaldin, 8 years ago)


Camano 3.0


  • Re-deploying site requires redeploying broker - VERY BAD!
    • When you redeploy - don't wipe the state recovery file: this will preserve existing reservations. HOWEVER: there is a bug now that prevents expanding the packages if the state recovery lock file is present. Aydan will fix #145. Every actor is designed to work like that. If a broker is blown away, service managers will continue working until they need extend. Basically we need to fix recovery bugs if there are any but by design, redeploying should be fine. Recovery is most problematic on SM and Authorities. Eucalyptus is made to recover but not well tested.

See #187 first, then look at #182, #183, #184, #185, #186

  • How can we pass port configuration from the switches into the log from failure of operations?
    • if you specify a task property as '' (Config class) will be passed back (with stripped '') and the property will be attached to the unit for which the handler was executed ( -> blah) however failed units aren't sent back to e.g. SM. Logging it in the handler is possible. Logging is probably easiest. Also possible to attach it to the reservation and pass it as a property. There is also a notice mechanism that can be used to pass it back to the reservation.
    • Problem is related to using Ant as the basis for handler scripts. To look at changing to using Jython as the engine, look at Config class. One issue may be checking progress of the operation. Jeff has details on this (added for one of the demos). Some code in AntConfig? class may be generically useful and would have to be pushed up. Implement a generic config, look at javax.scripting and BSF (bean-scripting framework).
  • Do we still an interactor deadlock problem?
    • Yes. Needs fixing. Every inter-actor call holds big lock. Across multiple containers it is possible for call and response to be in different threads, which may cause deadlock. The solution is when calls are made across actors, they are not done while holding the big lock. The issue is handling exceptions.
  • If a parent reservation fails, should children be allowed to go on? #189
    • There is a concept of 'deferral'. If you don't have enough resources, you can send back partial resources, which is why this makes sense. We may need to add a property on the control for the resource pool, a new property 'non-deferrable' may need to be added. There is a binary predicate that determines whether a redeem is possible (yes redeem/no redeem/no redeem and release). The children reservation get tickets and they need to be cleaned up if a parent fails on redeem. This needs to be a transaction. Predecessor reservations need to be closed, however we may need to wait until they are done redeeming, as closing in redeeming state is difficult.
  • Recovery issue between multiple containers: #205
  • Trust-root at actor registry (to enable configuration without specifying topology section in config file): r3258
  • Need to re-enable ticket validation #181
  • Site consolidation (is it needed?): NO
    • Can/Should we get rid of RENCI-net UNC-net authorities? So we can have a single authority controlling EX3200? With NDL exporting multiple resource types we can now do the consolidation.
    • We could modify configuration processor to create resource pools based on NDL input to avoid repeating delegation in config.xml (and NDL). To be discussed.
    • Since we are dealing with a simplified layout of substrate, for longer term it is beneficial to continue using Net authorities since they will typically correspond to intermediate network providers.
  • NDL code:
    • #194, #195 (Yufeng)
    • Create a separate log file for NDL controller to aid debugging (and stop sending stuff to stdout)
  • Term-related issues
    • Is reservation time from RDF request properly used when creating ORCA reservation? Yes now r3210
    • How long are delegations to a broker from authority valid? Where is it set? is 21-day hard-coded somewhere?
  • config.xml has replicated information that should be gleaned from NDL the same way that abstract NDL is created and put on properties today: #199, #200, #201
  • Old bugs:
    • Adding resource pools from GUI/extending management API #120
    • Referencing actors by GUIDs instead of names #121
    • Emulation mode build #192
    • Node Agent install fail #193
    • Close reservation from reservation screen (for single VMs w/o controller use) fails #196, #116 (related)


  • Aydan to look at (1) Interactor deadlock, (2) broker/state recovery and (3) failing reservations/parent reservations
  • Victor/Ilia to look at handlers/jython/javax/BFS and logging + old bugs
  • Prateek/Muzhi - come up with draft API for image management supporting multiple cloud providers (Euca, XCat, Nimbus etc). Continue developing image management function as independent of ORCA, running as a webapp
  • Prateek/Victor - put shibboleth support into trunk, help investigage shib at UNC, test against two IDPs (UNC/Duke)