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

Make fsSync configurable #767

Closed
novoj opened this issue Jan 4, 2025 · 0 comments · Fixed by #768
Closed

Make fsSync configurable #767

novoj opened this issue Jan 4, 2025 · 0 comments · Fixed by #768
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@novoj
Copy link
Collaborator

novoj commented Jan 4, 2025

Explicit file system synchronisation (java.io.FileDescriptor#sync) is an expensive operation that is not necessary in all scenarios. It ensures that committed data is safely written to persistent storage, but in integration testing, for example, this kind of guarantee is useless.

The measured impact of this explicit synchronisation in a test integration suite of 1400 E2E tests heavily using evitaDB resulted in 25% better performance (shorter test suite duration), which is a significant improvement. So it's a good idea to make this fsync a configurable option, enabled by default, but able to be disabled.

@novoj novoj added the enhancement New feature or request label Jan 4, 2025
@novoj novoj added this to the Beta milestone Jan 4, 2025
@novoj novoj self-assigned this Jan 4, 2025
@novoj novoj modified the milestones: Beta, 2025.1 Jan 4, 2025
novoj added a commit that referenced this issue Jan 4, 2025
Explicit file system synchronisation (java.io.FileDescriptor#sync) is an expensive operation that is not necessary in all scenarios. It ensures that committed data is safely written to persistent storage, but in integration testing, for example, this kind of guarantee is useless.

The measured impact of this explicit synchronisation in a test integration suite of 1400 E2E tests heavily using evitaDB resulted in 25% better performance (shorter test suite duration), which is a significant improvement. So it's a good idea to make this fsync a configurable option, enabled by default, but able to be disabled.

Refs: #767
@novoj novoj linked a pull request Jan 4, 2025 that will close this issue
@novoj novoj closed this as completed in #768 Jan 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant