| 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-b 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 (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, notes VARCHA
R(200), UNIQUE INDEX (id)); |
| 38 |
| 39 // Table for storing git revision information. |
| 40 CREATE TABLE githash (ts INT NOT NULL PRIMARY KEY, gitnumber INT NOT NULL, g
ithash VARCHAR(40) NOT NULL, author VARCHAR(40) NOT NULL, message VARCHAR(200) N
OT NULL, UNIQUE INDEX (ts)); |
| 41 |
| 42 // Table for mapping revisions and annotations. This support many-to-many |
| 43 // mapping. |
| 44 CREATE TABLE githashnotes (ts INT NOT NULL, id INT NOT NULL, FOREIGN KEY (ts
) REFERENCES githash(ts), FOREIGN KEY (id) REFERENCES notes(id), UNIQUE INDEX (t
s, id)); |
| 45 |
| 46 Password for the database will be stored in the metadata instance. To see the cu
rrent password stored in metadata and the fingerprint: |
| 47 |
| 48 gcutil --project=google.com:skia-buildbots getinstance skia-perf-b |
| 49 |
| 50 To set the mysql password that webtry is to use: |
| 51 |
| 52 gcutil --project=google.com:skia-buildbots setinstancemetadata skia-perf-b -
-metadata=readonly:[password-from-valentine] --metadata=readwrite:[password-from
-valentine] --fingerprint=[the metadata fingerprint] |
| 53 |
| 54 Installation |
| 55 ------------ |
| 56 See the README file. |
| OLD | NEW |