From 8c1ffc54ba04a31addaa4a029a72f68105fc52e7 Mon Sep 17 00:00:00 2001 From: "Brian S. Stephan" Date: Fri, 21 Oct 2011 17:01:09 -0500 Subject: [PATCH] Markov: drop the max id stuff, get a bunch of chains and pick one randomly. cooler this way. --- modules/Markov.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/modules/Markov.py b/modules/Markov.py index 8ba284e..3e1fd2c 100644 --- a/modules/Markov.py +++ b/modules/Markov.py @@ -521,10 +521,8 @@ class Markov(Module): values = [] try: db = self.get_db() - max_id = self._get_max_chain_id() - rand_id = random.randint(1,max_id) - query = 'SELECT k2 FROM markov_chain WHERE v = ? AND (context = ? OR context IS NULL) AND id >= {0:d} UNION SELECT k2 FROM markov_chain WHERE v = ? AND (context = ? OR context IS NULL) AND id < {1:d} LIMIT 1'.format(rand_id, rand_id) - cursor = db.execute(query, (v,context,v,context)) + query = 'SELECT k2 FROM markov_chain WHERE v = ? AND (context = ? OR context IS NULL)' + cursor = db.execute(query, (v,context)) results = cursor.fetchall() for result in results: