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

Database reopening regression on Windows #226

Closed
nazar-pc opened this issue Oct 10, 2023 · 3 comments
Closed

Database reopening regression on Windows #226

nazar-pc opened this issue Oct 10, 2023 · 3 comments

Comments

@nazar-pc
Copy link
Contributor

nazar-pc commented Oct 10, 2023

Somewhere between 0.4.9 and 0.4.11 (can't test 0.4.10 because it is broken on Windows) there was a regression introduced that prevents database from being reopened on restart when used with Substrate, the error looks like this:

Error: SubstrateService(Other("Failed to build a full node: Client(Backend("IO Error: Access is denied. (os error 5)"))"))

Downgrading 0.4.11 to 0.4.9 fixes the issue. Not happening on Linux or macOS, first start on Windows succeeds as well.

Frontier already requires at least 0.4.10, so would be nice to fix upstream in parity-db so we don't have to use fork of parity-db with fake version bump.

@arkpar
Copy link
Member

arkpar commented Oct 12, 2023

Do you mean that the error occurs after the node process is restarted? Does reboot help?

IIRC substrate does not oficially support windows. What toolchain do you compile with? msvc or gnu? Is there a build script or instructions?

@nazar-pc
Copy link
Contributor Author

Do you mean that the error occurs after the node process is restarted?

Yes

Does reboot help?

Didn't check, should I? That seems overkill anyway.

IIRC substrate does not oficially support windows. What toolchain do you compile with? msvc or gnu? Is there a build script or instructions?

It is not officially supported, but also when there are issues they are getting fixed. I understand that there is no upstream CI, but we do run things in our CI and we have a few hunder users on Windows with expectation of thousands more, so it is important to us even if upstream doesn't care.

We build with MSVC, here are exact commands in CI (build can be triggered manually even in a fork): https://github.com/subspace/subspace/blob/14b552d9b1dd499b7bf78c2636db469a726b873e/.github/workflows/snapshot-build.yml#L168-L172

In latest revision we have downgraded to 0.4.9, but if you check out this, it should be reproducible (there are also prebuilt executables attached there): https://github.com/subspace/subspace/releases/tag/snapshot-2023-oct-06

@arkpar
Copy link
Member

arkpar commented Oct 12, 2023

Fixed in 0.4.12

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

No branches or pull requests

2 participants