forked from MirrorHub/synapse
		
	Py3 storage/_base.py
Signed-off-by: Adrian Tschira <nota@notafile.com>
This commit is contained in:
		
					parent
					
						
							
								ecc4b88bd1
							
						
					
				
			
			
				commit
				
					
						095292304f
					
				
			
		
					 1 changed files with 22 additions and 17 deletions
				
			
		|  | @ -27,6 +27,8 @@ import sys | |||
| import time | ||||
| import threading | ||||
| 
 | ||||
| from six import itervalues, iterkeys, iteritems | ||||
| from six.moves import intern, range | ||||
| 
 | ||||
| logger = logging.getLogger(__name__) | ||||
| 
 | ||||
|  | @ -137,7 +139,7 @@ class PerformanceCounters(object): | |||
| 
 | ||||
|     def interval(self, interval_duration, limit=3): | ||||
|         counters = [] | ||||
|         for name, (count, cum_time) in self.current_counters.iteritems(): | ||||
|         for name, (count, cum_time) in iteritems(self.current_counters): | ||||
|             prev_count, prev_time = self.previous_counters.get(name, (0, 0)) | ||||
|             counters.append(( | ||||
|                 (cum_time - prev_time) / interval_duration, | ||||
|  | @ -543,7 +545,7 @@ class SQLBaseStore(object): | |||
|             ", ".join("%s = ?" % (k,) for k in values), | ||||
|             " AND ".join("%s = ?" % (k,) for k in keyvalues) | ||||
|         ) | ||||
|         sqlargs = values.values() + keyvalues.values() | ||||
|         sqlargs = list(values.values()) + list(keyvalues.values()) | ||||
| 
 | ||||
|         txn.execute(sql, sqlargs) | ||||
|         if txn.rowcount > 0: | ||||
|  | @ -561,7 +563,7 @@ class SQLBaseStore(object): | |||
|             ", ".join(k for k in allvalues), | ||||
|             ", ".join("?" for _ in allvalues) | ||||
|         ) | ||||
|         txn.execute(sql, allvalues.values()) | ||||
|         txn.execute(sql, list(allvalues.values())) | ||||
|         # successfully inserted | ||||
|         return True | ||||
| 
 | ||||
|  | @ -629,8 +631,8 @@ class SQLBaseStore(object): | |||
|         } | ||||
| 
 | ||||
|         if keyvalues: | ||||
|             sql += " WHERE %s" % " AND ".join("%s = ?" % k for k in keyvalues.iterkeys()) | ||||
|             txn.execute(sql, keyvalues.values()) | ||||
|             sql += " WHERE %s" % " AND ".join("%s = ?" % k for k in iterkeys(keyvalues)) | ||||
|             txn.execute(sql, list(keyvalues.values())) | ||||
|         else: | ||||
|             txn.execute(sql) | ||||
| 
 | ||||
|  | @ -694,7 +696,7 @@ class SQLBaseStore(object): | |||
|                 table, | ||||
|                 " AND ".join("%s = ?" % (k, ) for k in keyvalues) | ||||
|             ) | ||||
|             txn.execute(sql, keyvalues.values()) | ||||
|             txn.execute(sql, list(keyvalues.values())) | ||||
|         else: | ||||
|             sql = "SELECT %s FROM %s" % ( | ||||
|                 ", ".join(retcols), | ||||
|  | @ -725,9 +727,12 @@ class SQLBaseStore(object): | |||
|         if not iterable: | ||||
|             defer.returnValue(results) | ||||
| 
 | ||||
|         # iterables can not be sliced, so convert it to a list first | ||||
|         it_list = list(iterable) | ||||
| 
 | ||||
|         chunks = [ | ||||
|             iterable[i:i + batch_size] | ||||
|             for i in xrange(0, len(iterable), batch_size) | ||||
|             it_list[i:i + batch_size] | ||||
|             for i in range(0, len(it_list), batch_size) | ||||
|         ] | ||||
|         for chunk in chunks: | ||||
|             rows = yield self.runInteraction( | ||||
|  | @ -767,7 +772,7 @@ class SQLBaseStore(object): | |||
|         ) | ||||
|         values.extend(iterable) | ||||
| 
 | ||||
|         for key, value in keyvalues.iteritems(): | ||||
|         for key, value in iteritems(keyvalues): | ||||
|             clauses.append("%s = ?" % (key,)) | ||||
|             values.append(value) | ||||
| 
 | ||||
|  | @ -790,7 +795,7 @@ class SQLBaseStore(object): | |||
|     @staticmethod | ||||
|     def _simple_update_txn(txn, table, keyvalues, updatevalues): | ||||
|         if keyvalues: | ||||
|             where = "WHERE %s" % " AND ".join("%s = ?" % k for k in keyvalues.iterkeys()) | ||||
|             where = "WHERE %s" % " AND ".join("%s = ?" % k for k in iterkeys(keyvalues)) | ||||
|         else: | ||||
|             where = "" | ||||
| 
 | ||||
|  | @ -802,7 +807,7 @@ class SQLBaseStore(object): | |||
| 
 | ||||
|         txn.execute( | ||||
|             update_sql, | ||||
|             updatevalues.values() + keyvalues.values() | ||||
|             list(updatevalues.values()) + list(keyvalues.values()) | ||||
|         ) | ||||
| 
 | ||||
|         return txn.rowcount | ||||
|  | @ -850,7 +855,7 @@ class SQLBaseStore(object): | |||
|             " AND ".join("%s = ?" % (k,) for k in keyvalues) | ||||
|         ) | ||||
| 
 | ||||
|         txn.execute(select_sql, keyvalues.values()) | ||||
|         txn.execute(select_sql, list(keyvalues.values())) | ||||
| 
 | ||||
|         row = txn.fetchone() | ||||
|         if not row: | ||||
|  | @ -888,7 +893,7 @@ class SQLBaseStore(object): | |||
|             " AND ".join("%s = ?" % (k, ) for k in keyvalues) | ||||
|         ) | ||||
| 
 | ||||
|         txn.execute(sql, keyvalues.values()) | ||||
|         txn.execute(sql, list(keyvalues.values())) | ||||
|         if txn.rowcount == 0: | ||||
|             raise StoreError(404, "No row found") | ||||
|         if txn.rowcount > 1: | ||||
|  | @ -906,7 +911,7 @@ class SQLBaseStore(object): | |||
|             " AND ".join("%s = ?" % (k, ) for k in keyvalues) | ||||
|         ) | ||||
| 
 | ||||
|         return txn.execute(sql, keyvalues.values()) | ||||
|         return txn.execute(sql, list(keyvalues.values())) | ||||
| 
 | ||||
|     def _simple_delete_many(self, table, column, iterable, keyvalues, desc): | ||||
|         return self.runInteraction( | ||||
|  | @ -938,7 +943,7 @@ class SQLBaseStore(object): | |||
|         ) | ||||
|         values.extend(iterable) | ||||
| 
 | ||||
|         for key, value in keyvalues.iteritems(): | ||||
|         for key, value in iteritems(keyvalues): | ||||
|             clauses.append("%s = ?" % (key,)) | ||||
|             values.append(value) | ||||
| 
 | ||||
|  | @ -978,7 +983,7 @@ class SQLBaseStore(object): | |||
|         txn.close() | ||||
| 
 | ||||
|         if cache: | ||||
|             min_val = min(cache.itervalues()) | ||||
|             min_val = min(itervalues(cache)) | ||||
|         else: | ||||
|             min_val = max_value | ||||
| 
 | ||||
|  | @ -1093,7 +1098,7 @@ class SQLBaseStore(object): | |||
|                 " AND ".join("%s = ?" % (k,) for k in keyvalues), | ||||
|                 " ? ASC LIMIT ? OFFSET ?" | ||||
|             ) | ||||
|             txn.execute(sql, keyvalues.values() + pagevalues) | ||||
|             txn.execute(sql, list(keyvalues.values()) + list(pagevalues)) | ||||
|         else: | ||||
|             sql = "SELECT %s FROM %s ORDER BY %s" % ( | ||||
|                 ", ".join(retcols), | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue