Skip to content

Commit 97ebfc7

Browse files
committed
Merge pull request #818 from LearningLocker/issue/slowcount
Added set of indexes for performance (and hinting)
2 parents 8dac325 + b3a410c commit 97ebfc7

File tree

3 files changed

+51
-5
lines changed

3 files changed

+51
-5
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
<?php
2+
3+
use Illuminate\Database\Migrations\Migration;
4+
use Illuminate\Database\Schema\Blueprint;
5+
6+
class CreateStatementIndexes extends Migration {
7+
8+
/**
9+
* Run the migrations.
10+
*
11+
* @return void
12+
*/
13+
public function up() {
14+
$db = \DB::getMongoDB();
15+
16+
$indexOptions = ['background'=>1, 'socketTimeoutMS'=>-1];
17+
$statements = new MongoCollection($db, 'statements');
18+
19+
$statements->createIndex(['statement.id' => 1, 'lrs_id' => 1], $indexOptions);
20+
$statements->createIndex(['statement.actor.mbox' => 1], $indexOptions);
21+
$statements->createIndex(['stored' => 1], $indexOptions);
22+
$statements->createIndex(['timestamp' => 1], $indexOptions);
23+
$statements->createIndex(['active' => 1], $indexOptions);
24+
$statements->createIndex(['voided' => 1], $indexOptions);
25+
$statements->createIndex(['lrs_id' => 1], $indexOptions);
26+
$statements->createIndex(['lrs_id' => 1, 'active' => -1, 'voided' => 1], $indexOptions);
27+
$statements->createIndex(['lrs_id' => 1, 'statement.actor.account.name' => 1, 'statement.actor.account.homePage' => 1], $indexOptions);
28+
$statements->createIndex(['lrs_id' => 1, 'statement.actor.mbox' => 1], $indexOptions);
29+
$statements->createIndex(['lrs_id' => 1, 'statement.verb.id' => 1], $indexOptions);
30+
$statements->createIndex(['lrs_id' => 1, 'statement.object.id' => 1], $indexOptions);
31+
$statements->createIndex(['lrs_id' => 1, 'stored' => -1], $indexOptions);
32+
$statements->createIndex(['lrs_id' => 1, 'timestamp' => -1], $indexOptions);
33+
}
34+
35+
36+
/**
37+
* Reverse the migrations.
38+
*
39+
* @return void
40+
*/
41+
public function down()
42+
{
43+
// we really don't want to remove this indexes
44+
}
45+
46+
}

app/views/partials/lrs/backbone/templates.blade.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,8 +135,8 @@
135135
</script>
136136

137137
<script id="dashboardHeader" type="text/template">
138-
<h3>Statements <span><%= statement_count %></span></h3>
139-
<p class="averages">Your daily average is <span style="color:#00cc00;"> <%= statement_avg %> statements</span>.</p>
138+
<h3>Statements <span><%= statement_count.toLocaleString() %></span></h3>
139+
<p class="averages">Your daily average is <span style="color:#00cc00;"> <%= statement_avg.toLocaleString() %> statements</span>.</p>
140140
</script>
141141

142142
<script id="showLoading" type="text/template">

app/views/partials/site/backbone/templates.blade.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@
181181
</div>
182182
<div class="col-xs-12 col-sm-4 col-lg-4">
183183
<div class="bordered stats-box">
184-
<span><%= statement_count %></span>
184+
<span><%= statement_count.toLocaleString() %></span>
185185
Total Statements
186186
</div>
187187
</div>
@@ -228,8 +228,8 @@
228228
<div class="row">
229229
<div class="col-xs-12 col-sm-12">
230230
<div class="statement-graph clearfix">
231-
<h3>Statements <span><%= statement_count %></span></h3>
232-
<p class="averages">Your daily average is <span style="color:#00cc00;"> <%= statement_avg %> statements</span>.</p>
231+
<h3>Statements <span><%= statement_count.toLocaleString() %></span></h3>
232+
<p class="averages">Your daily average is <span style="color:#00cc00;"> <%= statement_avg.toLocaleString() %> statements</span>.</p>
233233
</div>
234234
</div>
235235
</div>

0 commit comments

Comments
 (0)