/[pxelator]/lib/PXElator/store.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /lib/PXElator/store.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 492 by dpavlin, Mon Jan 25 17:55:55 2010 UTC revision 496 by dpavlin, Sun Jan 31 15:22:34 2010 UTC
# Line 5  use strict; Line 5  use strict;
5    
6  use POSIX;  use POSIX;
7  use Time::HiRes qw/time/;  use Time::HiRes qw/time/;
8    use Data::Dump qw(dump);
9    
10  #use CouchDB;  #use CouchDB;
11    
12  use MongoDB;  use MongoDB;
13    
14  my $conn = MongoDB::Connection->new;  my $conn = MongoDB::Connection->new;
15  my $db = $conn->get_database( 'pxelator' );  our $db = $conn->get_database( 'pxelator' );
16  our $audit = $db->get_collection( 'audit' );  our $audit = $db->get_collection( 'audit' );
17    
18    
# Line 61  sub audit { Line 62  sub audit {
62    
63    
64  sub query {  sub query {
65          my $callback = shift;          my ( $from_t, $callback ) = @_;
66          my $cursor = $audit->query->sort({ '$natural' => -1 })->limit( 100 );          my $q;
67            $q = { 'package.time' => { '$lt' => $from_t * 1 } } if $from_t;
68            warn "# query ", dump($q);
69            $audit->ensure_index({ 'package.name' => 1 });
70            my $cursor = $audit->query($q)->sort({ 'package.time' => -1 })->limit( 100 );
71          while( my $o = $cursor->next ) {          while( my $o = $cursor->next ) {
72                  $callback->( $o );                  $callback->( $o );
73          }          }

Legend:
Removed from v.492  
changed lines
  Added in v.496

  ViewVC Help
Powered by ViewVC 1.1.26