Changeset 424

Show
Ignore:
Timestamp:
07/15/09 07:25:24 (11 years ago)
Author:
kovell
Message:

Fixes: killlists with both involved corps and alliances work. Memory use reduced.

Location:
dev/common/includes
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • dev/common/includes/class.db.mysqli.php

    r404 r424  
    8787        $t1 = strtok(microtime(), ' ') + strtok(''); 
    8888 
     89                if(isset($this->resid_)) $this->resid_->free(); 
     90 
    8991        $this->resid_ = mysqli_query($this->dbconn_->id(),$sql); 
    9092 
     
    196198        // this is the minimum runtime a query has to run to be 
    197199        // eligible for caching in seconds 
    198         $this->_minruntime = 0.05; 
     200        $this->_minruntime = 0.1; 
    199201 
    200202        // maximum size of a cached result set (512kB) 
     
    424426        // we got no or no valid cache so open the connection and run the query 
    425427        $this->dbconn_ = new DBConnection_mysqli(); 
    426  
    427         $t1 = strtok(microtime(), ' ') + strtok(''); 
     428                if(isset($this->resid_)) $this->resid_->free(); 
     429 
     430                $t1 = strtok(microtime(), ' ') + strtok(''); 
    428431 
    429432        $this->resid_ = mysqli_query($this->dbconn_->id(), $sql); 
     
    458461        { 
    459462            $this->genCache(); 
     463                        // We will use the cached version now so free the mysqli resource. 
     464                        if($this->_cached) 
     465                        { 
     466                                $this->resid_->free(); 
     467                                unset($this->resid_); 
     468                        } 
    460469        } 
    461470 
     
    607616        $this->_minruntime = 0.1; 
    608617 
    609         // maximum size of a cached result set (1MB) 
    610         $this->_maxcachesize = 1048576; 
     618        // maximum size of a cached result set (512kB) 
     619        $this->_maxcachesize = 524288; 
    611620        $this->d = true; 
    612621    } 
     
    737746        // we got no or no valid cache so open the connection and run the query 
    738747        $this->dbconn_ = new DBConnection_mysqli; 
     748                if(isset($this->resid_)) $this->resid_->free(); 
    739749 
    740750        $t1 = strtok(microtime(), ' ') + strtok(''); 
  • dev/common/includes/class.db_memcache.php

    r404 r424  
    1515        $this->_minruntime = 0.1; 
    1616 
    17         // maximum size of a cached result set (1MB) 
    18         $this->_maxcachesize = 1048576; 
     17        // maximum size of a cached result set (512kB) 
     18        $this->_maxcachesize = 524288; 
    1919        $this->d = true; 
    2020    } 
  • dev/common/includes/class.killlist.php

    r399 r424  
    4444         * 
    4545         */ 
    46         $timeindex='kll_timestamp'; 
    4746        if (!$this->qry_->executed_) 
    4847        { 
     
    151150                                        $this->sql_ .= $invop." ind.ind_crp_id IN (". 
    152151                                                implode(',', $this->inv_crp_)." ) "; 
     152                                        $invop = "OR"; 
    153153                                } 
    154154                                if($this->inv_all_ ) 
     
    158158                                } 
    159159                                $this->sql_ .= ") ) "; 
    160 /* Faster on <50k mails, much slower on >500k 
    161                                 $this->sql_ .= " INNER JOIN "; 
    162                                 if($this->inv_plt_ && !($this->inv_crp_ || $this->inv_all_)) 
    163                                 { 
    164                                         $this->sql_ .= " kb3_inv_detail ind ". 
    165                   "ON (kll.kll_id = ind.ind_kll_id AND ind.ind_plt_id IN (". 
    166                   implode(',', $this->inv_plt_)." ) ) "; 
    167                                 } 
    168                                 else 
    169                                 { 
    170                                         $unionop = " ( "; 
    171                                         if($this->inv_plt_) 
    172                                         { 
    173                                                 $indsqlp .= $unionop." SELECT DISTINCT ind_kll_id ". 
    174                                                         "FROM kb3_inv_detail ". 
    175                                                         "WHERE ind_plt_id IN (".implode(',', $this->inv_plt_)." ) "; 
    176                                                 $unionop = " UNION "; 
    177                                         } 
    178                                         if($this->inv_crp_) 
    179                                         { 
    180                                                 $this->sql_ .= $unionop." SELECT DISTINCT ind_kll_id ". 
    181                                                         "FROM kb3_inv_detail WHERE ind_crp_id IN (". 
    182                                                         implode(',', $this->inv_crp_)." ) "; 
    183                                                 $unionop = " UNION "; 
    184                                         } 
    185                                         if($this->inv_all_) $this->sql_ .= $unionop." SELECT DISTINCT ind_kll_id FROM kb3_inv_detail WHERE ind_all_id IN (". 
    186                                           implode(',', $this->inv_all_).") "; 
    187                                         $this->sql_ .= ") ind ON (kll.kll_id = ind.ind_kll_id) "; 
    188                                 } 
    189 */ 
    190160            } 
    191161            // The first argument after WHERE affects sql optimisation so check 
  • dev/common/includes/globals.php

    r423 r424  
    77else 
    88{ 
    9         $svn_rev = '423'; 
     9        $svn_rev = '424'; 
    1010} 
    1111define('SVN_REV', $svn_rev);