Theo Van Dinter wrote:
I don't believe the docs say it'll make "whatever changes are necessary".
What it says is that it'll read in your old DB and make a new DB_File based
one. There's nothing about upgrading db versions.
From man sa-learn:
--import Migrate data from older version/non DB_File
based databases
Which implies to me that it will also shuffle data v2->v3. However,
further down, the detailed note on --import only says, as you noted,
that it will upgrade non-DB_File Bayes to DB_File.
The bayes DB isn't v3, so SA won't use it for reads, such as dump.
Well, I was expecting --import to have done the upgrade, and --dump
magic is a convenient way to crosscheck that the process didn't lose
tokens or something silly like that. (It could happen... although I
think it would take bad hardware to cause it.)
You need to get the DB to go read-write, which will cause the DB to
be upgraded from version 2 to 3. Such as the documented "sa-learn
--sync". :)
Again from the man page:
--sync Syncronize the database and the journal if needed
--sync Syncronize the journal and databases. Upon successfully
syncing the database with the entries in the journal, the journal file
is removed.
None of this implies to me that it will actually upgrade a v2 to a v3
database; it only talks about the journal.
If I get a few free moments I'll try to come up with a suitable patch to
make the --import and --sync entries a little more clear.
I went ahead and bit the bullet with a new Bayes db yesterday anyway -
even with a minimally-trained Bayes database and no OCR (yet), it's
still significantly more *effective* than the 2.64 install. However,
and this is why I didn't upgrade much earlier, 3.1.7 is occupying ~5-10M
more per child - without the local or third-party rules I had quite a
few in the old install.
-kgd