[Koha-devel] How about a different way of handling database updates
LAURENT Henri-Damien
laurenthdl at alinto.com
Fri Jan 29 20:58:08 CET 2010
Michael Hafen a écrit :
>>> My opinion is that the current system is not that bad. The
>>>
> dependency
>
>>> graph is linear, date ordered by version number last digits. It just
>>> becomes crazy when updates are ported from one branch to the other, HEAD
>>> to maintenance for example. And there is (am I wrong?) to claim
>>> 'communitly' such a number:
>>>
>> The problem with the wiki page for db number claiming is it doesn't
>> seem to work, at least it hasn't worked for me in the past. It assumes
>> that the features will be committed in the order that the db numbers
>> are claimed, which I don't believe is true. In that case, if the wiki
>> page were enforced, then db versions would be committed out of order,
>> and the updater would not work correctly. I just don't believe the
>> wiki page is effective at all. After having a number of db version
>> numbers stepped on, I stopped using it.
>>
>>
>
> This is one of the two major concerns I have with the current system,
> and lead to my proposal. The other concern is proprietary database
> updates, which are practically impossible with the current system
> because of this same problem of stomping on revision numbers.
>
> On Fri, 2010-01-29 at 13:58 +0100, Paul Poulain wrote:
>
>> Frederic Demians a écrit :
>>
>>> Those kind of things can be tricky and messy.
>>>
I agree.
But they already are.
When one works on new features for 3.4 (see RFC for 3.4) and have to
plan for DB updates, how does one deal with update database and rebase
and merging ?
On the other hand, I agree I proposed things that could become very
complicated.
But it was brain dumping and proposals.
I donot think the wiki has been much helpfull. It is quite difficult to
plan how many updates you will need in order to bug fix and design a
feature.
It could be in fact a simple text file in installer/data/mysql/
ticketsclaim.... But then, simply getting
But the fact is that it would not adress the fact that you can run
multiple branches on the same codebase. And you would LOVE the merge to
be the more seamless as possible.
As release maintainer for 3.0 I **had to*** create and arrange db
updates in a different order than master branch. Knowing wich db version
you were on 3.00.01 and not 3.01 was really important, even though its
management could have been improved. (Things that would add some tables
and maybe break features should never have mixed up with stable code.)
It ended up to be VERY tricky and dangerous to only cherry pick bug
fixes unless master code is really close to maintenance branch.
This lead to duplication of code. This would have been avoided if
updatedatabase30.pl replaced updatedatabase.pl. But then, I would have
had to cope with conflict at each cherry pick even if the commit would
not update updatedatabase.pl.
Not to mention all the db changes that local users may want to do and track.
>> Other idea : shouldn't we open a new position, named "database
>> consistency manager" or something like that ?
>>
>
> I don't think having a DB Consistency Manager is going to help that
> much. I don't think it would be much different from the wiki page. It
> would be one person in charge instead of several people trying to
> coordinate. But that person would still have a lot of work to do with
> changing patches or making patches of their own to keep database updates
> sane.
>
More information about the Koha-devel
mailing list