| OLD | NEW |
| (Empty) | |
| 1 DESIGN |
| 2 ====== |
| 3 |
| 4 |
| 5 Overview |
| 6 -------- |
| 7 Provides interactive dashboard for Skia performance data. |
| 8 |
| 9 |
| 10 Architecture |
| 11 ------------ |
| 12 |
| 13 Perf Stats Database |
| 14 ------------------- |
| 15 |
| 16 Annotations Database |
| 17 -------------------- |
| 18 |
| 19 A Cloud SQL (a cloud version of MySQL) database is used to keep information on S
kia git revisions and their corresponding annotations. The database will be upda
ted when users add/edit/delete annotations via the dashboard UI. |
| 20 |
| 21 All passwords for MySQL are stored in valentine (search "skia perf"). |
| 22 |
| 23 To connect to the database from authorized network (including skia-perf GCE): |
| 24 |
| 25 $ mysql -h 173.194.104.24 -u root -p |
| 26 |
| 27 Initial setup of the database, the users, and the tables: |
| 28 |
| 29 CREATE DATABASE skia; |
| 30 USE skia; |
| 31 CREATE USER 'readonly'@'%' IDENTIFIED BY <password in valentine>; |
| 32 GRANT SELECT ON *.* TO 'readonly'@'%'; |
| 33 CREATE USER 'readwrite'@'%' IDENTIFIED BY <password in valentine>; |
| 34 GRANT SELECT, DELETE, UPDATE, INSERT ON *.* TO 'readwrite'@'%'; |
| 35 |
| 36 // Table for storing annotations. |
| 37 CREATE TABLE notes ( |
| 38 id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, |
| 39 notes VARCHAR(200), |
| 40 UNIQUE INDEX (id)); |
| 41 |
| 42 // Table for storing git revision information. |
| 43 CREATE TABLE githash ( |
| 44 ts INT NOT NULL PRIMARY KEY, |
| 45 gitnumber INT NOT NULL, |
| 46 githash VARCHAR(40) NOT NULL, |
| 47 author VARCHAR(40) NOT NULL, |
| 48 message VARCHAR(200) NOT NULL, |
| 49 UNIQUE INDEX (ts)); |
| 50 |
| 51 // Table for mapping revisions and annotations. This support many-to-many |
| 52 // mapping. |
| 53 CREATE TABLE githashnotes ( |
| 54 ts INT NOT NULL, |
| 55 id INT NOT NULL, |
| 56 FOREIGN KEY (ts) REFERENCES githash(ts), |
| 57 FOREIGN KEY (id) REFERENCES notes(id), |
| 58 UNIQUE INDEX (ts, id)); |
| 59 |
| 60 Password for the database will be stored in the metadata instance. To see the cu
rrent password stored in metadata and the fingerprint: |
| 61 |
| 62 gcutil --project=google.com:skia-buildbots getinstance [skia-perf GCE instan
ce] |
| 63 |
| 64 To set the mysql password that webtry is to use: |
| 65 |
| 66 gcutil --project=google.com:skia-buildbots setinstancemetadata [skia-perf GC
E instance] --metadata=readonly:[password-from-valentine] --metadata=readwrite:[
password-from-valentine] --fingerprint=[the metadata fingerprint] |
| 67 |
| 68 Installation |
| 69 ------------ |
| 70 See the README file. |
| OLD | NEW |