mirror of
https://github.com/ankitects/anki.git
synced 2025-09-24 16:56:36 -04:00
we don't need rep in the revlog
This commit is contained in:
parent
cc0df00fe5
commit
8a9174fd4d
3 changed files with 14 additions and 17 deletions
|
@ -369,8 +369,8 @@ limit %d""" % (self._groupLimit(), self.reportLimit), lim=self.dayCutoff)
|
||||||
ivl = card.ivl if leaving else -(self._delayForGrade(conf, card.grade))
|
ivl = card.ivl if leaving else -(self._delayForGrade(conf, card.grade))
|
||||||
def log():
|
def log():
|
||||||
self.deck.db.execute(
|
self.deck.db.execute(
|
||||||
"insert into revlog values (?,?,?,?,?,?,?,?,?)",
|
"insert into revlog values (?,?,?,?,?,?,?,?)",
|
||||||
int(time.time()*1000), card.id, ease, card.cycles,
|
int(time.time()*1000), card.id, ease,
|
||||||
ivl, lastIvl,
|
ivl, lastIvl,
|
||||||
card.factor, taken, type)
|
card.factor, taken, type)
|
||||||
try:
|
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)
|
taken = min(card.timeTaken(), self._cardConf(card)['maxTaken']*1000)
|
||||||
def log():
|
def log():
|
||||||
self.deck.db.execute(
|
self.deck.db.execute(
|
||||||
"insert into revlog values (?,?,?,?,?,?,?,?,?)",
|
"insert into revlog values (?,?,?,?,?,?,?,?)",
|
||||||
int(time.time()*1000), card.id, ease, card.reps,
|
int(time.time()*1000), card.id, ease,
|
||||||
card.ivl, card.lastIvl, card.factor, taken,
|
card.ivl, card.lastIvl, card.factor, taken,
|
||||||
1)
|
1)
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -138,7 +138,6 @@ create table if not exists revlog (
|
||||||
time integer primary key,
|
time integer primary key,
|
||||||
cid integer not null,
|
cid integer not null,
|
||||||
ease integer not null,
|
ease integer not null,
|
||||||
rep integer not null,
|
|
||||||
ivl integer not null,
|
ivl integer not null,
|
||||||
lastIvl integer not null,
|
lastIvl integer not null,
|
||||||
factor integer not null,
|
factor integer not null,
|
||||||
|
@ -326,7 +325,7 @@ name, "{}", "{}", ?, "" from models2""", simplejson.dumps(
|
||||||
r = []
|
r = []
|
||||||
for row in db.execute("""
|
for row in db.execute("""
|
||||||
select
|
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(nextInterval as int), cast(lastInterval as int),
|
||||||
cast(nextFactor*1000 as int), cast(min(thinkingTime, 60)*1000 as int),
|
cast(nextFactor*1000 as int), cast(min(thinkingTime, 60)*1000 as int),
|
||||||
yesCount from reviewHistory"""):
|
yesCount from reviewHistory"""):
|
||||||
|
@ -340,10 +339,9 @@ yesCount from reviewHistory"""):
|
||||||
# no ease 0 anymore
|
# no ease 0 anymore
|
||||||
row[2] = row[2] or 1
|
row[2] = row[2] or 1
|
||||||
# determine type, overwriting yesCount
|
# determine type, overwriting yesCount
|
||||||
reps = row[3]
|
newInt = row[3]
|
||||||
newInt = row[4]
|
oldInt = row[4]
|
||||||
oldInt = row[5]
|
yesCnt = row[7]
|
||||||
yesCnt = row[8]
|
|
||||||
# yesCnt included the current answer
|
# yesCnt included the current answer
|
||||||
if row[2] > 1:
|
if row[2] > 1:
|
||||||
yesCnt -= 1
|
yesCnt -= 1
|
||||||
|
@ -351,16 +349,16 @@ yesCount from reviewHistory"""):
|
||||||
# new or failed
|
# new or failed
|
||||||
if yesCnt:
|
if yesCnt:
|
||||||
# type=relrn
|
# type=relrn
|
||||||
row[8] = 2
|
row[7] = 2
|
||||||
else:
|
else:
|
||||||
# type=lrn
|
# type=lrn
|
||||||
row[8] = 0
|
row[7] = 0
|
||||||
else:
|
else:
|
||||||
# type=rev
|
# type=rev
|
||||||
row[8] = 1
|
row[7] = 1
|
||||||
r.append(row)
|
r.append(row)
|
||||||
db.executemany(
|
db.executemany(
|
||||||
"insert or ignore into revlog values (?,?,?,?,?,?,?,?,?)", r)
|
"insert or ignore into revlog values (?,?,?,?,?,?,?,?)", r)
|
||||||
db.execute("drop table reviewHistory")
|
db.execute("drop table reviewHistory")
|
||||||
|
|
||||||
# longer migrations
|
# longer migrations
|
||||||
|
|
|
@ -103,9 +103,8 @@ def test_learn():
|
||||||
# check log is accurate
|
# check log is accurate
|
||||||
log = d.db.first("select * from revlog order by time desc")
|
log = d.db.first("select * from revlog order by time desc")
|
||||||
assert log[2] == 2
|
assert log[2] == 2
|
||||||
assert log[3] == 2
|
assert log[3] == -180
|
||||||
assert log[4] == -180
|
assert log[4] == -30
|
||||||
assert log[5] == -30
|
|
||||||
# pass again
|
# pass again
|
||||||
d.sched.answerCard(c, 2)
|
d.sched.answerCard(c, 2)
|
||||||
# it should by due in 10 minutes
|
# it should by due in 10 minutes
|
||||||
|
|
Loading…
Reference in a new issue