[Rt-commit] [svn] r1373 - in DBIx-SearchBuilder/trunk: .
SearchBuilder/Record
jesse at pallas.eruditorum.org
jesse at pallas.eruditorum.org
Mon Aug 30 14:34:01 EDT 2004
Author: jesse
Date: Mon Aug 30 14:34:00 2004
New Revision: 1373
Modified:
DBIx-SearchBuilder/trunk/ (props changed)
DBIx-SearchBuilder/trunk/Changes
DBIx-SearchBuilder/trunk/MANIFEST
DBIx-SearchBuilder/trunk/META.yml
DBIx-SearchBuilder/trunk/SearchBuilder.pm
DBIx-SearchBuilder/trunk/SearchBuilder/Record/Cachable.pm
Log:
----------------------------------------------------------------------
r8464 at tinbook: jesse | 2004-08-30T18:33:26.752457Z
Sanity fixes to the caching layer from autrijus
----------------------------------------------------------------------
Modified: DBIx-SearchBuilder/trunk/Changes
==============================================================================
--- DBIx-SearchBuilder/trunk/Changes (original)
+++ DBIx-SearchBuilder/trunk/Changes Mon Aug 30 14:34:00 2004
@@ -1,5 +1,8 @@
Revision history for Perl extension DBIx::SearchBuilder.
+1.10_03 Mon Aug 30 14:31:10 EDT 2004
+ - Cache Sanity fixes from Autrijus Tang <autrijus at autrijus.org>
+
1.10_02 Thu Aug 26 13:31:13 EDT 2004
1.10_01 Thu Aug 26 00:08:31 EDT 2004
Modified: DBIx-SearchBuilder/trunk/MANIFEST
==============================================================================
--- DBIx-SearchBuilder/trunk/MANIFEST (original)
+++ DBIx-SearchBuilder/trunk/MANIFEST Mon Aug 30 14:34:00 2004
@@ -2,7 +2,6 @@
Makefile.PL
MANIFEST
MANIFEST.SKIP
-Cache/Simple/TimedExpiry.pm
SearchBuilder.pm
SearchBuilder/Handle.pm
SearchBuilder/Union.pm
@@ -10,7 +9,6 @@
SearchBuilder/Handle/mysql.pm
SearchBuilder/Handle/mysqlPP.pm
SearchBuilder/Record/Cachable.pm
-SearchBuilder/Record/CacheCache.pm
SearchBuilder/Handle/Oracle.pm
SearchBuilder/Handle/Informix.pm
SearchBuilder/Handle/SQLite.pm
Modified: DBIx-SearchBuilder/trunk/META.yml
==============================================================================
--- DBIx-SearchBuilder/trunk/META.yml (original)
+++ DBIx-SearchBuilder/trunk/META.yml Mon Aug 30 14:34:00 2004
@@ -1,5 +1,5 @@
name: DBIx-SearchBuilder
-version: 1.10_01
+version: 1.10_03
license: perl
distribution_type: module
build_requires:
@@ -12,4 +12,4 @@
no_index:
directory:
- inc
-generated_by: Module::Install version 0.33
+generated_by: Module::Install version 0.35
Modified: DBIx-SearchBuilder/trunk/SearchBuilder.pm
==============================================================================
--- DBIx-SearchBuilder/trunk/SearchBuilder.pm (original)
+++ DBIx-SearchBuilder/trunk/SearchBuilder.pm Mon Aug 30 14:34:00 2004
@@ -5,7 +5,7 @@
use strict;
use vars qw($VERSION);
-$VERSION = "1.10_02";
+$VERSION = "1.10_03";
=head1 NAME
@@ -301,7 +301,6 @@
# XXX - Postgres gets unhappy with distinct and OrderBy aliases
if ($self->{order_clause} =~ /(?<!main)\./) {
- $self->DEBUG(1);
$$statementref = "SELECT main.* FROM $$statementref";
}
else {
Modified: DBIx-SearchBuilder/trunk/SearchBuilder/Record/Cachable.pm
==============================================================================
--- DBIx-SearchBuilder/trunk/SearchBuilder/Record/Cachable.pm (original)
+++ DBIx-SearchBuilder/trunk/SearchBuilder/Record/Cachable.pm Mon Aug 30 14:34:00 2004
@@ -90,14 +90,16 @@
sub LoadByCols {
my ( $self, %attr ) = @_;
- # Blow away the primary cache key since we're loading.
- $self->{'_SB_Record_Primary_RecordCache_key'} = undef;
## Generate the cache key
my $alt_key = $self->_gen_alternate_RecordCache_key(%attr);
if ( $self->_fetch( $self->_lookup_primary_RecordCache_key($alt_key) ) ) {
+ $self->{'_id'} = $self->SUPER::id();
return ( 1, "Fetched from cache" );
}
+ # Blow away the primary cache key since we're loading.
+ $self->{'_SB_Record_Primary_RecordCache_key'} = undef;
+
## Fetch from the DB!
my ( $rvalue, $msg ) = $self->SUPER::LoadByCols(%attr);
## Check the return value, if its good, cache it!
@@ -106,9 +108,8 @@
$self->_store();
$self->_KeyCache->set( $alt_key, $self->_primary_RecordCache_key);
- $self->{'_id'} = $self->SUPER::id();
-
}
+ $self->{'_id'} = $self->SUPER::id();
return ( $rvalue, $msg );
}
@@ -159,17 +160,10 @@
sub _fetch () {
my ( $self, $cache_key ) = @_;
- my $data = $self->_RecordCache->fetch($cache_key);
- $self->_deserialize($data);
-
-}
+ my $data = $self->_RecordCache->fetch($cache_key) or return;
+ @{$self}{keys %$data} = values %$data; # deserialize
+ return 1;
-sub _deserialize {
- my $self = shift;
- my $data = shift;
- foreach my $key ( keys %$data ) {
- $self->{$key} = $data->{$key};
- }
}
sub id {
More information about the Rt-commit
mailing list