← Back to team overview

syncany-team team mailing list archive

Re: Bigger database issues



Le 15/12/2013 02:13, Philipp Heckel a écrit :
>> More precisely, can you guarantee that version numbers are strictly
>> increasing for each file? It seems possible but I'm a bit
>> frightened by the complexity of the reconciliation code and thus no
>> entirely sure of its theoretical properties.
> Not that I know of. Right now, the only stuff being persisted is the
> new database versions (in full).

You mean the delta between the previous state and the current one, right?

> File versions of file contents are not added individually to the
> database.

I'm not sure how this changes something to my question.

> So from my perspective, this (and other) queries would work.
> Obviously, you'd had to make sure that you would only select
> non-DELETED file versions, but thats the only thing right now that
> could make the queries a bit more complicated.


> The FileVersion.version attribute is strictly increasing each time a 
> file version is updated. Old versions might be rolled back
> (deleted!) and new file versions might be added (with an identical
> version attribute) if a database version lost and is replaced. I hope
> that was clear ... It's late :-D

Sort of ;-)

> [..]
> So what I'm trying to say is that our problem does not affect the
> actual data, but just the metadata; and I'm not so sure that we can
> simply apply the same logic here.

I don't see the difference. Syncany is a content addressable storage (if
you neglect the multi chunks layer) coupled with a version control
system for its database. There is a large experience about VCS and it
should be summoned to design an efficient way of handling this database
versionning. But my comment was not about having a full delta skip
solution but simply to keep in the local database a sort of current
version to speed things up.

> You also been playing around with MySQL Workbench. Any new insights?
> Do you have an updated version? Have you tried some of the queries we
> need? I'm pretty surprised by MySQL Workbench. It's a cool tool, and
> it supports importing/exporting a model.

I've just modified the ER diagram in order to have cleaner vector clocks
(I think my first try was completely broken), see attached files.

I also try working with Dbeaver, but it does not do what I expected it
to do. In particular, it does not allow creating the database schema
from an ER diagram, it only displays as an ER diagram an existing
database. So far, the only complete solution I've found is mysql
workbench, which is impressing.



Attachment: mysql-tentative.mwb
Description: application/vnd.mysql-workbench-model

Attachment: mysql-tentative.pdf
Description: Adobe PDF document