component_id=component_id,
slice_urn = slice_urn,
allocation_state='geni_allocated')
- record.sync()
+ record.sync(self.driver.api.dbsession)
return resulting_nodes
def free_egre_key(self):
if not auth_hrn or hrn == self.config.SFA_INTERFACE_HRN:
auth_hrn = hrn
auth_info = self.auth.get_auth_info(auth_hrn)
- from sfa.storage.alchemy import dbsession
+ # xxx although unlikely we might want to check for a potential leak
+ dbsession=self.dbsession()
from sfa.storage.model import RegRecord
record = dbsession.query(RegRecord).filter_by(type='authority+sa', hrn=hrn).first()
if not record:
self.reg_researchers = researchers
# when dealing with credentials, we need to retrieve the PIs attached to a slice
+ # WARNING: with the move to passing dbsessions around, we face a glitch here because this
+ # helper function is called from the trust/ area that
def get_pis (self):
from sqlalchemy.orm import sessionmaker
Session=sessionmaker()
dbsession.delete(sliver_allocation)
dbsession.commit()
- def sync(self):
-
- from sqlalchemy.orm import sessionmaker
- Session=sessionmaker()
- dbsession=Session.object_session(self)
+ def sync(self, dbsession):
constraints = [SliverAllocation.sliver_id==self.sliver_id]
results = dbsession.query(SliverAllocation).filter(and_(*constraints))
records = []