20070714Meeting

This is the 1st meeting of the TimeVault Team, starting at 17:00 GMT and finishing at 18:12 GMT

Attendance

Please type PRESENT at the start of the meeting to ensure we are all clear who is online and paying attention. We had XX active members during todays meeting.

  • Perhaps we'll do this next time.

Agenda

  • Should future effort center around getting the current code into Gusty or into spending time streamlining the server to improve performance and robustness for Gusty, and release GUI's for it separately.
  • Packaging, coding, documentation

Minutes

Any Other Business

Guide Lines

The chairman of the meeting should endeavour to ensure that key points are discussed in an appropriate time. Key Topics from the Agenda should be tabled in the channel using a market such as [ TOPIC ] or * TOPIC * Followed by the agenda item. Where Suggestions or Ideas are put forward and considered as acceptable to the group then it should be noted by the Chairman as [ IDEA ] or * IDEA * . Where a concept is discussed and agreed the use of [ AGREED ] or * AGREED * should be defined by the chairman and should signify the topic is discussed and the meeting is to move on. Be clear on the channel when the meeting is concluded and how and when the minutes will be posted.

IRC LOGS

<SourceContact> I have talked to many of you via IM or at other times on IRC
<SourceContact> and I wanted to get some sort of critical mass together so we can make decisions on where to go with timevault
<SourceContact> which I will now start referring to as TV
<SourceContact> The project was started on June 11 as something else
<SourceContact> I was interested in the ubuntuhomeserver thread, and so I figured I would package rsnapshot, which is similar to pdumpfs which I use, for the server
<SourceContact> after a few dozen posts, I had changed TV so much that it became something else completely - more and more like a particular Apple project
<joejaxx> what was it supposed to be originally?
<SourceContact> So far, development has been pretty much just me and I wanted to get to a milestone where it works enough that others can get a taste of it
<SourceContact> It used hard-links to snapshot dirs and allowed you to view the drive at some point in the past
<joejaxx> oh ok
<SourceContact> but that's a pretty heavy solution for saving changes to a single file
<SourceContact> while a hardlink doesn't use any space, a directory structure would have to be set up mirroring the subdirs
<SourceContact> each dir entry in the filesystem takes 4K or so, so each snapshot in a 10000 dir system actually takes 40MB just to save a small change
<SourceContact> not so bad if you snap once a day, but not acceptable to snapshots what occur some time after changing a file possible a hundred times a day
<SourceContact> what I was thinking to do for the future is this:
<SourceContact> get timevault into a debugged operational state and then split the project up into daemon and client components
<SourceContact> btw, TV seems like a project that interests the whole Linux community - there are ports to redhat, Gentoo, and Arch-Linux in the works apparently 
<SourceContact> I also wanted to create a team for TV, since I won't be able to go it alone and do quality work without help
<thomas__> sounds good, and I hate to interrupt, but this is very similar to dirvish right?  I just want to make sure so were not reinventing the wheel :D
<SourceContact> Having been started about a month ago, and considering I have a full time job, I can safely assume that I have less than 160 hours into it
<SourceContact> yep, originally very like Dirvish :)
<SourceContact> with a GUI and nautilus integration
<SourceContact> but it's not like that any more
<SourceContact> here's a quick overview: a daemon runs in the background using inotify to watch specified directories, when something changes it queues the change for a snapshot and then makes a copy if there has actually been a content change, and not just a metadata change (like Beagle or Tracker would make)
<SourceContact> if the file changes again before the snapshot, the timer is reset
<SourceContact> there is also a way to browse and search previous snapshots and view queued ones
<SourceContact> does anyone want to add something to the description?
<SourceContact> Also, from the FAQ: Doesn't ZFS cover much of the functionality implemented in TimeVault at a much lower level? 
<thomas__> sounds good to me to describe it's current state
<SourceContact> ZFS does provide a superior mechanism for taking a snapshot. However there is no logic in ZFS on when to take a snapshot. You will still need a program that interacts with the filesystem to monitor changes and then based on some logic decides what to save and what to discard (for example, a file may be saved more than once, but have the exact same content, also, you don't really want to save a file until it has stopped cha
<SourceContact> nging for a while, etc.). In addition, you'll need some way of visualizing snapshots, searching them, deleting them, etc.
<zekopeko> the question is will ZFS ever be ported on linux
<tom_v> ditto what thomas__ said
<SourceContact> right - and if it does, we can use that to /take/ the snapshots
<zekopeko> but who would change there entire filesystem?
<joejaxx> is ther not zfs/fuse?
<joejaxx> there*
<zekopeko> yes
<zekopeko> but isn't that slow
<zekopeko> ZFS is state of the art fs to use it over fuse looks inefficient
<SourceContact> it is a little slow now, but it might get faster at some point - still it would require using a FUSE for your real data rather than just applying something to a tried and integrated fs
<SourceContact> so, on with the agenda: first, do you guys think that there is a real use for the app? no flattery or niceties here please
<thomas__> yes
<SourceContact> does it do something that's not better done using other tools?
<thomas__> it seems a lot like window's shadow copy, very nice to have
<SourceContact> never used it - could you elaborate?
<SourceContact> Vista, right?
<zekopeko> i think it integrates good tech in a user friendly manner 
<joejaxx> shadow copy in windows has been around for a while
<thomas__> i wish there was an expire-rules thing like in dirvish (a way to backup old snapshots then delete them)
<SourceContact> thomas__: there will be
<thomas__> sweet, the one thing that seemed to be missing
<thomas__> but again, other then the nautilus integration, and gui, how exactly will the backend be different from dirvish?
<SourceContact> the pending two features, before I consider this current branch complete are: purging/expiry, where it'll only keep X snapshots after Y weeks/days, and abort upcoming snapshots
<thomas__> and i know you described how tv works, and if i am missing something sorry
<SourceContact> well, dirvish uses the same heavy-handed copy that rsnapshot and pdumpfs use - the same one I made the first rev to use
<SourceContact> if you want to snapshot something, it will such up 4XDirs KB and several seconds of hard-drive churning
<SourceContact> not something you want to happen a hundred times a day
<SourceContact> ps., one feature is purge, the other is abort
<thomas__> ah ok, i get it now, so that is what is different, cool
<thomas__> would compression be a good idea with tv?
<SourceContact> I was using TV to take a baseline at work on Friday, and having it copy something 10000 directories deep
<SourceContact> I had turned of notifications and forgot that TV was running
<thomas__> ouch
<SourceContact> the performance hit was negligible
<SourceContact> which is a very good thing
<SourceContact> the large backup (maybe a couple of Gigs) was on purpose to test performance
<SourceContact> TV queues work, and only processes during idle time
<tom_v> I ran it on a dir with an 11gig torrent downloading with no ill effects
<SourceContact> wow
<SourceContact> that sounds insane
<SourceContact> no slowdown of the download?
<tom_v> not that I noticed
<SourceContact> cool
<tom_v> yep
<SourceContact> ok, so I want to get a team going
<SourceContact> kbrooks has offered to help with coding, bug fixes, and documentation as needed
<SourceContact> xerosis (who couldn't make it today) has been helping with bug finding and is looking at the KDE port
<SourceContact> is anyone else interested in getting directly involved as part of the TV team? I think we need developers and maintainers, documentation, contributors, advocacy, and new user support in forum
<tom_v> I'll do what I can
<SourceContact> oh, and I want to talk about trying to start a separate forum in under third-party projects at ubuntuforums
<tom_v> especially after I've moved (about 2 weeks, everything is hectic at the mo)
<SourceContact> ok, anyone good at launchpad?
<thomas__> same as tom_v, I don't know python (although I can probably pick it up in about a day) and I don't know much about the underlying problem we are solving, so I probably can't help with coding, everything else though I should be able to do
<SourceContact> excellent guys, thanks
<SourceContact> what's the best way to officially subscribe to a project on launchpad?
<SourceContact> so that you can see and close bug reports, or upload packages, etc.
<zekopeko> same asm thomas, but after the summer i could learn python and i have some fundamentals in c/c++
<tom_v> I'm not sure, I've had minimal Launchpad experience, bug reports and such
<SourceContact> I have a group that was created this morning called TimeVaulters - hehe, catch name
<SourceContact> but the group is mostly just to upload code
<thomas__> again, same as tom_v
<SourceContact> I'm actually fine with the coding, but I've spent about half my time doing other stuff like helping others install it and trying to find out if their problems are caused by a bug or not
<SourceContact> I could really use the most help with the documentation, and new user support, and testing on different platforms
<zekopeko> that i could do
<SourceContact> oh, and in another catagory, I would love to find someone with previous Ubuntu packaging experience so they can assist with getting it in the repos
<SourceContact> right - anyone who volunteered, please go to the wiki: https://wiki.ubuntu.com/TimeVault and put yourself under the appropriate categories for Contributors (and add whatever categories you feel should be there)
<SourceContact> later, that is
<SourceContact> OK, my other question was this
<SourceContact> I would like to spend much more time streamlining the daemon
<SourceContact> there are ideas that I want to include such as moving all TV-related functionality into it, and having everything else interact through DBus
<SourceContact> right now, apps can see (but not change) the TV database, which is a security risk:
<SourceContact> on a multi-user machine the names of hidden files could be seen
<SourceContact> a kludge to hide that data from the official GUI could be put into place, but that's not the right way of doing it
<SourceContact> so, to fix that, I would have to make some pretty serious changes
<SourceContact> big enough that previous snapshots would no longer be valid - which I don't see as a huge problem right now, but it might be in the future
<thomas__> so their is something between the apps and tv to filter out what should and should not be seen?
<SourceContact> well, it would hide the DB from the apps (to everyone but root), and handle snapshot queries in the daemon based on the connecting user id
<SourceContact> so the daemon wouldn't show files that they are unauthorized to see
<SourceContact> tv is timevault.py - a server that is started in /etc/init.d/timevault when the machine boots up
<SourceContact> it's also written in python, and does all the real work of taking snapshots, analyzing if something changed, deferring snapshots, etc. - and it usually pulls it off only using about 8-10MB or writable memory
<kbrooks> SourceContact, wow
<SourceContact> kbrooks: hey! back?
<kbrooks> SourceContact, psuedo
<SourceContact> ok, no prob
<SourceContact> so, if you guys can help others with installation, documentation, and bug triage (meaning identifying that there actually is a bug and the surrounding circumstances), then I could focus heavily on development
<thomas__> sounds good
<tom_v> cool
<SourceContact> it's not really a lot of work if there's more than one person on it - thanks guys
<thomas__> and i think we all have already for the most part been trying to do that on the forums and such
<zekopeko> no problem
<SourceContact> right
<SourceContact> ok, finally (at least for me on the agenda): do we want to meet again? and what's the best way to schedule a meeting?
<zekopeko> i think that we need a mailing list
<SourceContact> that's a good idea
<tom_v> mailing list sounds good
<SourceContact> does launchpad facilitate that, or should we just start with a gmail group with all our names on it?
<tom_v> or the Wiki? does that do mailing lists?
<SourceContact> I went and looked on launchpad - doesn't seem to have anything at first glance
<zekopeko> i know some people from a student club and we have a few servers so i could ask if they could create a mailing list
<zekopeko> i can ask tomorrow
<SourceContact> ok, how about we all add ourselves to the TimeVaulters for now, which should give me your emails
<SourceContact> https://launchpad.net/~timevaulters/
<SourceContact> and allow us to contact each other that way
<tom_v> done
<zekopeko> done
<thomas__> done
<SourceContact> ok - you're all now timevaulters ;)
<tom_v> cool
<SourceContact> ok, so here are the meeting action items, as I understand them: 
<SourceContact> 1 - We'll go add ourselves to the wiki after deciding where we want to help
<SourceContact> 2 - Some of us will hang around the channel, reply to forum thread if we can, or answer questions in TV on launchpad
<SourceContact> 3 - Others will clean up the wiki page
<SourceContact> 4 - Try to find all (within reason) remaining bugs in the 0.6 rev.
<SourceContact> 5 - Create a new 0.7 branch that has a solid foundation
<SourceContact> 6 - TV advocacy if appropriate (i.e. if someone on the forums is looking for something like TV, we can post pointing it out)
<SourceContact> 7 - Done
<SourceContact> - over -
<tom_v> sounds good
<SourceContact> any ad-hoc items to add to this meeting?
<SourceContact> oh, here's one: if anyone knows a MOTU or packager, can you tell them what we're trying to do and have them take a look
<thomas__> should we post this somewhere?  I know that sometimes ubuntu guys post this kinda stuff on the wiki
<SourceContact> and then maybe contact me
<SourceContact> probably a good idea
<SourceContact> who wants to do it?
<tom_v> i can
<tom_v> where would it go?
<SourceContact> watch out for the formatting...
<tom_v> yeah I'm new to that
<SourceContact> anywhere you want to put it - create a new page probably
<tom_v> cool
<SourceContact> right - if it doesn't go in easily, let me know and we'll do it together
<thomas__> https://wiki.ubuntu.com/UKTeam/MeetingNotes/20070603Meeting?highlight=%28meeting%29 reference
<tom_v> I can look into that
<tom_v> cheers
<tom_v> wow
<tom_v> cool
<tom_v> I'll check that
<SourceContact> yep, looks like they slapped a couple of tags around the whole conversation and just posted it
<tom_v> I think I can get it sussed
<SourceContact> this part of the discussion will be a meta-discussion on the wiki :)
<SourceContact> ok, it's been 1:12 minutes - thanks for staying for the whole meeting
<thomas__> and thank you
<SourceContact> is there anything someone wants to add before we officially close
<zekopeko> nope
<tom_v> not that I can think of
<SourceContact> --- MEETING CLOSED: CUT HERE ---

TimeVault/MeetingNotes/20070714Meeting (last edited 2008-08-06 16:23:45 by localhost)