[1367] in Coldmud discussion meeting

root meeting help first first in chain previous in chain previous next next in chain last in chain last

Re: [COLD] Having problems tranferring users from old db to new

daemon@ATHENA.MIT.EDU (Mon Nov 10 13:35:58 1997 )

Date: Mon, 10 Nov 1997 11:28:20 -0700 (MST)
From: Brandon Gillespie <brandon@roguetrader.com>
To: Frank Crowell <frankc@maddog.com>
cc: Cold Stuff <coldstuff@cold.org>
In-Reply-To: <3466ADC3.BB8452EC@maddog.com>

On Sun, 9 Nov 1997, Frank Crowell wrote:

> What is a good way of moving a user from an old db to a newer db?
> 
> I'm trying to upgrade from a7 to a9.02, but I' m having some problems
> with moving the user accounts.  I can transfer the $user_*s to the new
> database, but if I try to connect as one of my test users, I get an
> error message that the the user either doesn't exist or the password is
> wrong.  If i try to create another user with the same name, i get the
> message that the name is in use.
> 
> I also created a new test user and logged in and could see all the users
> with @child $user, so I know that the users have been moved.
> 
> I also tried to @dump a user from one db and use tinyfugue to create the
> user at a new db.  I still had the same problem.
> 
> Essentially I have a a9.02 database with my old rooms, exits, objects,
> and people.  But the users can't log in although the password is still
> the same.

Did you use the upgrade script?

The problem you are having is that all users are indexed by their name on
$user_db, so you need to insert each of them into the database.  You can
use 'coldcc' to do this:

---------------------------
% coldcc -p -tstdin
[..coldcc msgs]

eval {
    var u;

    for u in ($user.children())
        $user_db.insert(u.name(), u);
};
CTRL-D
---------------------------

Then things should be ok (I think :)

-Brandon