Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PMMR false positive test? #2666

Closed
garyyu opened this issue Mar 11, 2019 · 5 comments
Closed

PMMR false positive test? #2666

garyyu opened this issue Mar 11, 2019 · 5 comments
Labels

Comments

@garyyu
Copy link
Contributor

garyyu commented Mar 11, 2019

On a Travis-Ci test log, I find this:

     Running /home/travis/build/garyyu/grin/target/release/deps/pmmr-9d03adec459ef515
running 10 tests
test cleanup_rewind_files_test ... ok
test pmmr_append ... ok
test compact_twice ... ok
test pmmr_compact_entire_peak ... ok
test pmmr_compact_horizon ... ok
test pmmr_compact_leaf_sibling ... ok
test pmmr_compact_single_leaves ... ok
test pmmr_prune_compact ... ok
test pmmr_reload ... ok
ERROR 2019-03-11T05:45:41Z: grin_store::types: Corrupted storage, could not read an entry from data file: IOErr("failed to fill whole buffer", UnexpectedEof)
ERROR 2019-03-11T05:45:41Z: grin_store::types: Corrupted storage, could not read an entry from data file: IOErr("failed to fill whole buffer", UnexpectedEof)
ERROR 2019-03-11T05:45:41Z: grin_store::types: Corrupted storage, could not read an entry from data file: IOErr("failed to fill whole buffer", UnexpectedEof)
ERROR 2019-03-11T05:45:41Z: grin_store::types: Corrupted storage, could not read an entry from data file: IOErr("failed to fill whole buffer", UnexpectedEof)
ERROR 2019-03-11T05:45:41Z: grin_store::types: Corrupted storage, could not read an entry from data file: IOErr("failed to fill whole buffer", UnexpectedEof)
ERROR 2019-03-11T05:45:41Z: grin_store::types: Corrupted storage, could not read an entry from data file: IOErr("failed to fill whole buffer", UnexpectedEof)
ERROR 2019-03-11T05:45:41Z: grin_store::types: Corrupted storage, could not read an entry from data file: IOErr("failed to fill whole buffer", UnexpectedEof)
ERROR 2019-03-11T05:45:41Z: grin_store::types: Corrupted storage, could not read an entry from data file: IOErr("failed to fill whole buffer", UnexpectedEof)
test pmmr_rewind ... ok
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

Is this Corrupted storage a false positive test bug? or the designed behavior in this test?

@garyyu
Copy link
Contributor Author

garyyu commented Mar 11, 2019

@antiochp Would you like to take a look? thanks.

@antiochp
Copy link
Member

antiochp commented Mar 11, 2019

We have something in the code that's attempting to read past the end of a rewound MMR.
i.e. We rewind to pos 3 (for example) and then in the tests we read pos 4.

I'm pretty sure we did not log those ERROR level messages before, but something changed in past few weeks.
We see these during "fast sync" on mainnet/floonet as well.

If we read a non-existent pos from the MMR we return None so these are harmless.

I think @yeastplume was investigating this a bit as well (I suspect we want to simply quieten this logging as its not really an issue).

@garyyu
Copy link
Contributor Author

garyyu commented Mar 18, 2019

This issue can be close by #2685

@0xmichalis
Copy link
Contributor

@garyyu you can close this issue yourself I guess :)

@antiochp
Copy link
Member

Closing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants