Fossil SCM

Add the "Compression Radio" line to the "stat" page.

drh 2008-03-08 13:49 trunk
Commit 9aaad3e799c79b1891e4e2519a49aceb269d19c5
1 file changed +14 -3
+14 -3
--- src/stat.c
+++ src/stat.c
@@ -33,30 +33,41 @@
3333
**
3434
** Show statistics and global information about the repository.
3535
*/
3636
void stat_page(void){
3737
i64 t;
38
- int n, m;
38
+ int n, m, fsize;
3939
char zBuf[100];
4040
login_check_credentials();
4141
if( !g.okRead ){ login_needed(); return; }
4242
style_header("Repository Statistics");
4343
@ <p><table class="label-value">
4444
@ <tr><th>Repository&nbsp;Size:</th><td>
45
- n = file_size(g.zRepositoryName);
46
- @ %d(n) bytes
45
+ fsize = file_size(g.zRepositoryName);
46
+ @ %d(fsize) bytes
4747
@ </td></tr>
4848
@ <tr><th>Number&nbsp;Of&nbsp;Artifacts:</th><td>
4949
n = db_int(0, "SELECT count(*) FROM blob");
5050
m = db_int(0, "SELECT count(*) FROM delta");
5151
@ %d(n-m) complete, %d(m) deltas, %d(n) total
5252
@ </td></tr>
5353
if( n>0 ){
54
+ int a, b;
5455
@ <tr><th>Uncompressed&nbsp;Artifact&nbsp;Size:</th><td>
5556
t = db_int64(0, "SELECT total(size) FROM blob WHERE size>0");
5657
sqlite3_snprintf(sizeof(zBuf), zBuf, "%lld", t);
5758
@ %d((int)(((double)t)/(double)n)) bytes average, %s(zBuf) bytes total
59
+ @ </td></tr>
60
+ @ <tr><th>Uncompression&nbsp;Ratio:</th><td>
61
+ if( t/fsize < 5 ){
62
+ b = 10;
63
+ fsize /= 10;
64
+ }else{
65
+ b = 1;
66
+ }
67
+ a = t/fsize;
68
+ @ %d(a):%d(b)
5869
@ </td></tr>
5970
}
6071
@ <tr><th>Number&nbsp;Of&nbsp;Baselines:</th><td>
6172
n = db_int(0, "SELECT count(distinct mid) FROM mlink");
6273
@ %d(n)
6374
--- src/stat.c
+++ src/stat.c
@@ -33,30 +33,41 @@
33 **
34 ** Show statistics and global information about the repository.
35 */
36 void stat_page(void){
37 i64 t;
38 int n, m;
39 char zBuf[100];
40 login_check_credentials();
41 if( !g.okRead ){ login_needed(); return; }
42 style_header("Repository Statistics");
43 @ <p><table class="label-value">
44 @ <tr><th>Repository&nbsp;Size:</th><td>
45 n = file_size(g.zRepositoryName);
46 @ %d(n) bytes
47 @ </td></tr>
48 @ <tr><th>Number&nbsp;Of&nbsp;Artifacts:</th><td>
49 n = db_int(0, "SELECT count(*) FROM blob");
50 m = db_int(0, "SELECT count(*) FROM delta");
51 @ %d(n-m) complete, %d(m) deltas, %d(n) total
52 @ </td></tr>
53 if( n>0 ){
 
54 @ <tr><th>Uncompressed&nbsp;Artifact&nbsp;Size:</th><td>
55 t = db_int64(0, "SELECT total(size) FROM blob WHERE size>0");
56 sqlite3_snprintf(sizeof(zBuf), zBuf, "%lld", t);
57 @ %d((int)(((double)t)/(double)n)) bytes average, %s(zBuf) bytes total
 
 
 
 
 
 
 
 
 
 
58 @ </td></tr>
59 }
60 @ <tr><th>Number&nbsp;Of&nbsp;Baselines:</th><td>
61 n = db_int(0, "SELECT count(distinct mid) FROM mlink");
62 @ %d(n)
63
--- src/stat.c
+++ src/stat.c
@@ -33,30 +33,41 @@
33 **
34 ** Show statistics and global information about the repository.
35 */
36 void stat_page(void){
37 i64 t;
38 int n, m, fsize;
39 char zBuf[100];
40 login_check_credentials();
41 if( !g.okRead ){ login_needed(); return; }
42 style_header("Repository Statistics");
43 @ <p><table class="label-value">
44 @ <tr><th>Repository&nbsp;Size:</th><td>
45 fsize = file_size(g.zRepositoryName);
46 @ %d(fsize) bytes
47 @ </td></tr>
48 @ <tr><th>Number&nbsp;Of&nbsp;Artifacts:</th><td>
49 n = db_int(0, "SELECT count(*) FROM blob");
50 m = db_int(0, "SELECT count(*) FROM delta");
51 @ %d(n-m) complete, %d(m) deltas, %d(n) total
52 @ </td></tr>
53 if( n>0 ){
54 int a, b;
55 @ <tr><th>Uncompressed&nbsp;Artifact&nbsp;Size:</th><td>
56 t = db_int64(0, "SELECT total(size) FROM blob WHERE size>0");
57 sqlite3_snprintf(sizeof(zBuf), zBuf, "%lld", t);
58 @ %d((int)(((double)t)/(double)n)) bytes average, %s(zBuf) bytes total
59 @ </td></tr>
60 @ <tr><th>Uncompression&nbsp;Ratio:</th><td>
61 if( t/fsize < 5 ){
62 b = 10;
63 fsize /= 10;
64 }else{
65 b = 1;
66 }
67 a = t/fsize;
68 @ %d(a):%d(b)
69 @ </td></tr>
70 }
71 @ <tr><th>Number&nbsp;Of&nbsp;Baselines:</th><td>
72 n = db_int(0, "SELECT count(distinct mid) FROM mlink");
73 @ %d(n)
74

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button