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

Split all validation messages on critical and minor ones [CORE4562] #4879

Closed
firebird-automations opened this issue Sep 28, 2014 · 8 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: @hvlad

Some errors reported by database validation (such as orphan pages and few another ones) is not critical for database, i.e. not affects query results and\or logical consistency of user data.
Such defects should not be counted as errors to not scary users.

Commits: ba11fb6 e56788a FirebirdSQL/fbt-repository@605331e FirebirdSQL/fbt-repository@78c2ac5

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

assignee: Vlad Khorsun [ hvlad ]

@firebird-automations
Copy link
Collaborator Author

Commented by: @hvlad

Database validation code was refactored and improved a bit:

- all found defects are now split on two categories - errors and warnings.
Warning is a non-critical defect which can not affect database correctness while minor issues are possible (some performance degradation or wasted space).
Orphan pages, orphan record versions and minor defects on index pages are now considered as warnings and not reported as errors anymore.

- gfix reports numbers of errors found and number of warnings separately.

- Correctness of internal counters on PIP page now validated.
If inconsistency found it is reported as warning and fixed (if no_update switch is not specified).

- It is checked now if bits on Pointer Page is in consistency with corresponding Data Page state.
If inconsistency found it is reported as warning and fixed (if no_update switch is not specified).

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

Fix Version: 3.0 Beta 1 [ 10332 ]

@firebird-automations
Copy link
Collaborator Author

Commented by: Ann Harrison (awharrison)

Thank you! - should have been done decades ago. I'll give you special credit in my talk.

@firebird-automations
Copy link
Collaborator Author

Commented by: @hvlad

More changes:

- validation now put records about its start and finish into firebird.log
- separate numbers of found errors and warnings and number of fixed defects are reported within "validation finished" message
- every validation message now have prefix "Error:" or "Warning:"

@firebird-automations
Copy link
Collaborator Author

Commented by: @hvlad

Ann,

glad you liked it :)

@firebird-automations
Copy link
Collaborator Author

Modified by: @pcisar

status: Resolved [ 5 ] => Closed [ 6 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @pavel-zotov

status: Closed [ 6 ] => Closed [ 6 ]

QA Status: No test

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

No branches or pull requests

2 participants