• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

gephi / graphstore / #576
91%

Build:
DEFAULT BRANCH: master
Ran 25 Aug 2026 02:01PM UTC
Jobs 1
Files 129
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

25 Aug 2026 01:59PM UTC coverage: 91.219%. Remained the same
#576

push

web-flow
Fix generateLargeGraphStore() building edges over detached nodes (#292)

* Fix GraphGenerator.generateLargeGraphStore() building edges over detached nodes

generateLargeEdgeList() creates edges against its own independently-
sized, throwaway NodeStore rather than the real one - so edge.source/
target only lined up with generateLargeGraphStore()'s actual inserted
nodes by numeric coincidence (matching storeId, different objects).
removeNode()'s cascade-edge-removal walks the real node's own
adjacency links, which were never wired to these edges, so removing a
referenced node silently left a dangling edge behind instead of
cascading. That only surfaced once something both spanned multiple
storage blocks and had elements removed afterward - traced back to
plain, pre-existing sequential serialization code, not anything
specific to threading.

Root cause confirmed directly: graphStore.nodeStore.get(edge.source.
storeId) != edge.source for every edge before this fix.

Fix: build edges via generateEdgeList(graphStore.nodeStore, ...) so
they reference the real nodes. generateLargeNodeList()/
generateLargeEdgeList() are left untouched since other tests use them
independently; generateLargeGraphStore() was unused before this
session's tests, so nothing depended on the old behavior.

* Move the regression test to a dedicated GraphGeneratorTest

The fix touches GraphGenerator, not Serialization, so the test should
exercise that directly rather than proving it indirectly through a
full serialize/deserialize round-trip. Asserts the actual invariant
that broke: every edge's source/target is the same object registered
in the store's own nodeStore, not just one with a matching storeId.
Confirmed red on the pre-fix generator, green after.

* Remove explanatory comment from generateLargeGraphStore()

11801 of 12937 relevant lines covered (91.22%)

0.91 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #576.1 25 Aug 2026 02:01PM UTC 129
91.22
Source Files on build #576
  • Tree
  • List 129
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 4fa81295 on github
  • Prev Build on master
  • Next Build on master
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc