MCPcopy Create free account
hub / github.com/RedisGraph/RedisGraph / DeleteEdges

Function DeleteEdges

src/graph/graph_hub.c:188–219  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

186}
187
188void DeleteEdges
189(
190 GraphContext *gc,
191 Edge *edges,
192 uint64_t n,
193 bool log
194) {
195 ASSERT(gc != NULL);
196 ASSERT(n > 0);
197 ASSERT(edges != NULL);
198
199 // add edge deletion operation to undo log
200 bool has_indecise = GraphContext_HasIndices(gc);
201
202 UndoLog undo_log = (log == true) ? QueryCtx_GetUndoLog() : NULL;
203 EffectsBuffer *eb = (log == true) ? QueryCtx_GetEffectsBuffer() : NULL;
204
205 if(has_indecise == true || log == true) {
206 for (uint i = 0; i < n; i++) {
207 if(log == true) {
208 UndoLog_DeleteEdge(undo_log, edges + i);
209 EffectsBuffer_AddDeleteEdgeEffect(eb, edges + i);
210 }
211
212 if(has_indecise == true) {
213 _DeleteEdgeFromIndices(gc, edges + i);
214 }
215 }
216 }
217
218 Graph_DeleteEdges(gc->g, edges, n);
219}
220
221// updates a graph entity attribute set. Returns as out params the number
222// of properties set and removed.

Callers 2

ApplyDeleteEdgeFunction · 0.85
_DeleteEntitiesFunction · 0.85

Calls 7

GraphContext_HasIndicesFunction · 0.85
QueryCtx_GetUndoLogFunction · 0.85
UndoLog_DeleteEdgeFunction · 0.85
_DeleteEdgeFromIndicesFunction · 0.85
Graph_DeleteEdgesFunction · 0.85

Tested by

no test coverage detected