mirror of
https://github.com/tcsenpai/pensieve.git
synced 2025-06-06 03:05:25 +00:00
refact: remove event listener for last scan at
This commit is contained in:
parent
e810227985
commit
debb37797b
@ -308,8 +308,7 @@ def update_entity_tags(entity_id: int, tags: List[str], db: Session) -> Entity:
|
||||
|
||||
# Clear existing tags
|
||||
db.query(EntityTagModel).filter(EntityTagModel.entity_id == entity_id).delete()
|
||||
db.commit()
|
||||
|
||||
|
||||
for tag_name in tags:
|
||||
tag = db.query(TagModel).filter(TagModel.name == tag_name).first()
|
||||
if not tag:
|
||||
@ -323,6 +322,10 @@ def update_entity_tags(entity_id: int, tags: List[str], db: Session) -> Entity:
|
||||
source=MetadataSource.PLUGIN_GENERATED,
|
||||
)
|
||||
db.add(entity_tag)
|
||||
|
||||
# Update last_scan_at in the same transaction
|
||||
db_entity.last_scan_at = func.now()
|
||||
|
||||
db.commit()
|
||||
db.refresh(db_entity)
|
||||
return Entity(**db_entity.__dict__)
|
||||
@ -349,6 +352,10 @@ def add_new_tags(entity_id: int, tags: List[str], db: Session) -> Entity:
|
||||
source=MetadataSource.PLUGIN_GENERATED,
|
||||
)
|
||||
db.add(entity_tag)
|
||||
|
||||
# Update last_scan_at in the same transaction
|
||||
db_entity.last_scan_at = func.now()
|
||||
|
||||
db.commit()
|
||||
db.refresh(db_entity)
|
||||
return Entity(**db_entity.__dict__)
|
||||
@ -398,6 +405,9 @@ def update_entity_metadata_entries(
|
||||
db.add(entity_metadata)
|
||||
db_entity.metadata_entries.append(entity_metadata)
|
||||
|
||||
# Update last_scan_at in the same transaction
|
||||
db_entity.last_scan_at = func.now()
|
||||
|
||||
db.commit()
|
||||
db.refresh(db_entity)
|
||||
return Entity(**db_entity.__dict__)
|
||||
|
@ -339,27 +339,6 @@ def init_default_libraries(session, default_plugins):
|
||||
session.commit()
|
||||
|
||||
|
||||
@event.listens_for(EntityTagModel, "after_insert")
|
||||
@event.listens_for(EntityTagModel, "after_delete")
|
||||
def update_entity_last_scan_at_for_tags(mapper, connection, target):
|
||||
session = Session(bind=connection)
|
||||
entity = session.query(EntityModel).get(target.entity_id)
|
||||
if entity:
|
||||
EntityModel.update_last_scan_at(session, entity)
|
||||
session.commit()
|
||||
|
||||
|
||||
@event.listens_for(EntityMetadataModel, "after_insert")
|
||||
@event.listens_for(EntityMetadataModel, "after_update")
|
||||
@event.listens_for(EntityMetadataModel, "after_delete")
|
||||
def update_entity_last_scan_at_for_metadata(mapper, connection, target):
|
||||
session = Session(bind=connection)
|
||||
entity = session.query(EntityModel).get(target.entity_id)
|
||||
if entity:
|
||||
EntityModel.update_last_scan_at(session, entity)
|
||||
session.commit()
|
||||
|
||||
|
||||
async def update_or_insert_entities_vec(session, target_id, embedding):
|
||||
try:
|
||||
# First, try to update the existing row
|
||||
|
Loading…
x
Reference in New Issue
Block a user