advanced-testing
Objectives:
1) We have no measurement of freezer backup/restore performance. We cannot say that some code improvement affected freezer speed.
2) We have no tests with real data. We don't test freezer against 1/10/100 GB data. On small amount of data some errors just will not be visible - like memory leaks, overflow max memory capacity etc.
3) We can have a floating errors, let's say network is broken, swift is out of service, no rights to right to directory, nova/cinder/glance problems. This problems can have small frequency, but still very important for real usage.
4) Windows, Linux, mysql, mongodb and sqlserver backups atop of different versions of software.
5) Check of correct release of resources like file descriptors.
6) These tests can be very slow, so we would like to run it in background, doesn't affect our development process.
7) !!! Old backups should be restored with new version of code. Changes in code shouldn't break previous backups.
-------
Measurements should be complex and specific:
1) Memory consumption
2) Time of execution backup/restore
3) Network bandwidth
Continiously execution of real big backups and restores.
Simulation backups during extensive usage of mysql, mongodb.
First step :
Create a Jenkins node and define a job that will be checking the new version of code every 2 hours. Will try to restore old backups with new version of code. And check checksum.
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Eldar Nugaev
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- New
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by