Class: HTM::Jobs::GenerateRelationshipsJob
- Inherits:
-
Object
- Object
- HTM::Jobs::GenerateRelationshipsJob
- Defined in:
- lib/htm/jobs/generate_relationships_job.rb
Class Method Summary collapse
-
.perform(node_id:) ⇒ Object
Compute and persist relationship edges for a node.
Class Method Details
.perform(node_id:) ⇒ Object
Compute and persist relationship edges for a node.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/htm/jobs/generate_relationships_job.rb', line 27 def self.perform(node_id:) find_node(node_id) or return start_time = Process.clock_gettime(Process::CLOCK_MONOTONIC) begin candidates = compute_candidates(node_id) if candidates.empty? HTM.logger.info "GenerateRelationshipsJob: No tag-sharing neighbors for node #{node_id}" return end count = upsert_edges(node_id, candidates) elapsed = elapsed_ms(start_time) HTM.logger.info "GenerateRelationshipsJob: Upserted #{count} edges for node #{node_id} (#{elapsed}ms)" rescue StandardError => e HTM.logger.error "GenerateRelationshipsJob: Failed for node #{node_id}: #{e.class.name} - #{e.}" end end |