Skip to content

Address panic observed while operating with file callbacks#404

Merged
abhinavdangeti merged 4 commits intomasterfrom
fileCallbacksTestsFail
Apr 29, 2026
Merged

Address panic observed while operating with file callbacks#404
abhinavdangeti merged 4 commits intomasterfrom
fileCallbacksTestsFail

Conversation

@abhinavdangeti
Copy link
Copy Markdown
Member

@abhinavdangeti abhinavdangeti commented Apr 29, 2026

  • Separating vector tests out of the original file, to run unrelated tests in non-vectors mode.
  • Update github workflows for newer versions of GO.
  • Panic stack trace ..
--- FAIL: TestFileCallbacks (0.01s)
panic: runtime error: slice bounds out of range [18446744073709551611:3] [recovered, repanicked]

goroutine 35 [running]:
testing.tRunner.func1.2({0x10041d8c0, 0x14000018780})
	/opt/homebrew/Cellar/go/1.25.6/libexec/src/testing/testing.go:1872 +0x190
testing.tRunner.func1()
	/opt/homebrew/Cellar/go/1.25.6/libexec/src/testing/testing.go:1875 +0x31c
panic({0x10041d8c0?, 0x14000018780?})
	/opt/homebrew/Cellar/go/1.25.6/libexec/src/runtime/panic.go:783 +0x120
github.com/blevesearch/zapx/v17.(*SegmentBase).loadFieldDocValueReader(0x60?, {0x140002fe763?, 0x5?}, 0x5, 0x140000e5ba8?)
	/Users/abhinav.dangeti/Documents/go/src/github.com/blevesearch/zapx/docvalues.go:123 +0x3b0
github.com/blevesearch/zapx/v17.(*SegmentBase).loadDvReaders(0x14000000140)
	/Users/abhinav.dangeti/Documents/go/src/github.com/blevesearch/zapx/segment.go:835 +0x2d0
github.com/blevesearch/zapx/v17.(*ZapPlugin).open(0x1400015e100?, {0x14000404a40, 0x3b}, 0x0)
	/Users/abhinav.dangeti/Documents/go/src/github.com/blevesearch/zapx/segment.go:94 +0x26c
github.com/blevesearch/zapx/v17.(*ZapPlugin).Open(...)
	/Users/abhinav.dangeti/Documents/go/src/github.com/blevesearch/zapx/segment.go:49
github.com/blevesearch/zapx/v17.TestOpen(0x14000161a40)
	/Users/abhinav.dangeti/Documents/go/src/github.com/blevesearch/zapx/segment_test.go:40 +0xac
github.com/blevesearch/zapx/v17.TestFileCallbacks(0x14000161a40)
	/Users/abhinav.dangeti/Documents/go/src/github.com/blevesearch/zapx/file_callbacks_test.go:133 +0x28
testing.tRunner(0x14000161a40, 0x100434ea8)
	/opt/homebrew/Cellar/go/1.25.6/libexec/src/testing/testing.go:1934 +0xc8
created by testing.(*T).Run in goroutine 1
	/opt/homebrew/Cellar/go/1.25.6/libexec/src/testing/testing.go:1997 +0x364

+ Separating vector tests out of the original file, to run
  unrelated tests in non-vectors mode.
@CascadingRadium
Copy link
Copy Markdown
Member

CascadingRadium commented Apr 29, 2026

Looks like this is a real bug, we did not seem to catch this before as the workflows did not run the file callbacks tests - due to it being hidden under the vector go tag.

Copy link
Copy Markdown
Member

@CascadingRadium CascadingRadium left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, i think @Likith101 can address the panic in a separate patch.

@abhinavdangeti abhinavdangeti dismissed CascadingRadium’s stale review April 29, 2026 18:21

No, let's address the failure in this PR - alongside the tests that will now run in CV.

Thejas-bhat
Thejas-bhat previously approved these changes Apr 29, 2026
@Thejas-bhat Thejas-bhat self-requested a review April 29, 2026 18:26
@abhinavdangeti abhinavdangeti changed the title Filecallbacks test failures Panic observed while testing with file callbacks Apr 29, 2026
Thejas-bhat
Thejas-bhat previously approved these changes Apr 29, 2026
Copy link
Copy Markdown
Member

@Thejas-bhat Thejas-bhat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, but maybe you can throw in an in-line comment which summarizes the fact that rewriteSegmentBases() persists the segment into the writer with footer, so we can early exit over there?

@abhinavdangeti
Copy link
Copy Markdown
Member Author

Nice one @Likith101 👍🏼 .
@Thejas-bhat good call on the comment - I've added one.

@abhinavdangeti abhinavdangeti force-pushed the fileCallbacksTestsFail branch from 6faf8b8 to 46dfee6 Compare April 29, 2026 19:24
@abhinavdangeti abhinavdangeti force-pushed the fileCallbacksTestsFail branch from 46dfee6 to 4b9ea56 Compare April 29, 2026 19:25
@abhinavdangeti abhinavdangeti changed the title Panic observed while testing with file callbacks Panic observed while operating with file callbacks Apr 29, 2026
@abhinavdangeti abhinavdangeti changed the title Panic observed while operating with file callbacks Address panic observed while operating with file callbacks Apr 29, 2026
@abhinavdangeti abhinavdangeti merged commit b7d79e6 into master Apr 29, 2026
9 checks passed
@abhinavdangeti abhinavdangeti deleted the fileCallbacksTestsFail branch April 29, 2026 20:40
@abhinavdangeti
Copy link
Copy Markdown
Member Author

v17.1.1

abhinavdangeti pushed a commit to blevesearch/bleve that referenced this pull request Apr 30, 2026
…2326)

- This change also comes with bug fixes in cases where we fail to create
a centroid index, but the application decides to fallback to the naive
merge algorithm instead of fast merge
- Brings in these fixes in zapx/v17:
* b7d79e6 Abhi Dangeti, Likith B | Address panic observed while
operating with file callbacks
(blevesearch/zapx#404)
* b4e42c5 Thejas-bhat | MB-71216: implement fast merge for binary index
class (blevesearch/zapx#393)
* ca1c2cf Thejas-bhat | make the `faissIndex` interface and
implementation more modular
(blevesearch/zapx#403)
* f330de0 Likith B | Process In-Memory Segment Bases Before Persisting
(blevesearch/zapx#402)
* 3468d01 Likith B | MB-71216: Added Support for IVFRaBitQ Indexes
(blevesearch/zapx#391)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants