we don't need rep in the revlog

This commit is contained in:
Damien Elmes 2011-04-21 11:55:35 +09:00
parent cc0df00fe5
commit 8a9174fd4d
3 changed files with 14 additions and 17 deletions

View file

@ -369,8 +369,8 @@ limit %d""" % (self._groupLimit(), self.reportLimit), lim=self.dayCutoff)
ivl = card.ivl if leaving else -(self._delayForGrade(conf, card.grade))
def log():
self.deck.db.execute(
"insert into revlog values (?,?,?,?,?,?,?,?,?)",
int(time.time()*1000), card.id, ease, card.cycles,
"insert into revlog values (?,?,?,?,?,?,?,?)",
int(time.time()*1000), card.id, ease,
ivl, lastIvl,
card.factor, taken, type)
try:
@ -469,8 +469,8 @@ queue = 2 %s and due <= :lim order by %s limit %d""" % (
taken = min(card.timeTaken(), self._cardConf(card)['maxTaken']*1000)
def log():
self.deck.db.execute(
"insert into revlog values (?,?,?,?,?,?,?,?,?)",
int(time.time()*1000), card.id, ease, card.reps,
"insert into revlog values (?,?,?,?,?,?,?,?)",
int(time.time()*1000), card.id, ease,
card.ivl, card.lastIvl, card.factor, taken,
1)
try:

View file

@ -138,7 +138,6 @@ create table if not exists revlog (
time integer primary key,
cid integer not null,
ease integer not null,
rep integer not null,
ivl integer not null,
lastIvl integer not null,
factor integer not null,
@ -326,7 +325,7 @@ name, "{}", "{}", ?, "" from models2""", simplejson.dumps(
r = []
for row in db.execute("""
select
cast(time*1000 as int), cardId, ease, reps,
cast(time*1000 as int), cardId, ease,
cast(nextInterval as int), cast(lastInterval as int),
cast(nextFactor*1000 as int), cast(min(thinkingTime, 60)*1000 as int),
yesCount from reviewHistory"""):
@ -340,10 +339,9 @@ yesCount from reviewHistory"""):
# no ease 0 anymore
row[2] = row[2] or 1
# determine type, overwriting yesCount
reps = row[3]
newInt = row[4]
oldInt = row[5]
yesCnt = row[8]
newInt = row[3]
oldInt = row[4]
yesCnt = row[7]
# yesCnt included the current answer
if row[2] > 1:
yesCnt -= 1
@ -351,16 +349,16 @@ yesCount from reviewHistory"""):
# new or failed
if yesCnt:
# type=relrn
row[8] = 2
row[7] = 2
else:
# type=lrn
row[8] = 0
row[7] = 0
else:
# type=rev
row[8] = 1
row[7] = 1
r.append(row)
db.executemany(
"insert or ignore into revlog values (?,?,?,?,?,?,?,?,?)", r)
"insert or ignore into revlog values (?,?,?,?,?,?,?,?)", r)
db.execute("drop table reviewHistory")
# longer migrations

View file

@ -103,9 +103,8 @@ def test_learn():
# check log is accurate
log = d.db.first("select * from revlog order by time desc")
assert log[2] == 2
assert log[3] == 2
assert log[4] == -180
assert log[5] == -30
assert log[3] == -180
assert log[4] == -30
# pass again
d.sched.answerCard(c, 2)
# it should by due in 10 minutes