=== cpg|away is now known as cpg === cpg is now known as cpg|biab === cpg|biab is now known as cpg [09:37] morning ubuntuoners [10:02] morning popey [10:16] mornings! [10:19] hello sir. Good weekend I hope [12:01] /8/9 [12:02] oops [12:02] duanedesign, 0 [12:04] So, I'm testing user designated folders. That means that you can get any folder in your /home and say "I want to have this in Ubuntu One". The syncdaemon supports this, the web ui does not support it at the moment. [12:04] * rye checks what happens next ... [12:11] rye: does it share all folders below the one you choose or just the folder you select? [12:11] popey, all the hierarchy, I believe [12:11] cool [12:11] * popey would be interested in testing that [12:12] is the gstreamer0.10-fluendo-mp3 package going to be moved to main now that the music store depends on it? [12:14] popey, this is also a pre-requisite to "publish the file" so that it is accessible via HTTP by everyone [12:14] testing that as well [12:14] neat [12:20] rye: Is the pyinotify error followed by gibberish in syncdaemon.exception.log telling us anything? [12:21] EX: http://paste.ubuntu.com/386257/ === teknico is now known as teknico_away [12:22] duanedesign, grab that and cat it [12:22] 2010-02-18 08:52:41,543 - pyinotify - ERROR - The path /home/damns/Ubuntu One/новая папка of this watch must not be trusted anymore [12:22] 2010-02-18 21:19:57,259 - pyinotify - ERROR - The path /home/damns/Ubuntu One/новая папка-wrong-path of this watch must not be trusted anymore [12:22] and this is where we need someone who knows what that means [12:23] aha [12:23] * rye summoned someone... waiting for someone to appear [12:44] https://answers.edge.launchpad.net/ubuntuone-client/+question/102820 ? - Previously saved files have disappeared ? [12:46] rye: that reminds me. I wanted to ask about. https://answers.edge.launchpad.net/ubuntuone-client/+question/102607 [12:47] was unsure the correct answer on that one [12:47] duanedesign, yes, for now the answer - syncdaemon will panic and write No space left on device to the logs until it fills up the remaining space with the logs [12:59] duanedesign, that's why i linked the question to it === teknico_away is now known as teknico [13:35] pgraner ping [13:35] webm0nk3y: hello [13:35] pgraner, hi. you filed #528698? [13:36] bug #528698 [13:36] Launchpad bug 528698 in ubuntuone-client "All files missing in the Cloud but directory entries are there." [High,New] https://launchpad.net/bugs/528698 [13:36] webm0nk3y: yep [13:36] there's mup [13:36] hehe [13:36] pgraner, need some more details [13:36] webm0nk3y: sure [13:36] pgraner, in the Web UI what does it show as far as storage space used? [13:37] pgraner, question: did you have two or three machines involved in the incident? [13:38] pgraner, can you tell you have our *complete* attention? :) [13:38] webm0nk3y: 251.2 KB Used (0.0%) today, on Friday it was 0 KB Used (0.0%) [13:39] pgraner, ok, so it sounds like it is syncing new files right? [13:39] facundobatista: There are 3 machines, I had two previously set up and running (zorak & desktop), I was trying to add a third on Fri (air) [13:39] webm0nk3y: nope I have killed the sync daemon from all my boxes [13:40] pgraner, you gave me logs about the first one and the laptop [13:40] pgraner, k [13:40] pgraner, I would need logs from the second machine to discard the client in the equation [13:40] facundobatista: I gave you the ones from desktop & air [13:40] facundobatista, I'm going to setup a new machine and see if I have similar issues [13:40] facundobatista: ok standby [13:40] pgraner, thanks [13:50] webm0nk3y, facundobatista: bug updated with logs and info [13:50] pgraner, thank you [13:52] pgraner, thans! [13:52] *thanks [14:30] pgraner, are you positive you logged in with the same account when you setup the new computer? [14:31] webm0nk3y: yep I only have *one* U1 account and its all done with openid [14:31] webm0nk3y: ie. I only have one openid account which is my canonical email addr [14:32] pgraner, did any local files on your other machines get deleted? [14:33] webm0nk3y: the only onces got deleted on desktop, zorak was powered off (its my netbook) and when I brought it up I killed syncdaemon so it couldn't do any damage [14:33] pgraner, and I assume all files got deleted? [14:34] pgraner, in the bug report, you mentioned that directories showed up. Can you explain that a little more? [14:34] webm0nk3y: When I saw the notifier pop up and say it was syncing files and I new there were no changes, I looked on the local system and saw things going byebye, I killed the syncdaemon [14:35] pgraner, ok [14:35] pgraner, did you share your root folder with anyone? [14:35] webm0nk3y: When I went to add air (the 3rd machine) after adding the computer to U1, it took me to the web interface, thats when I noticed I had a directory hierarchy but no files in the dirs [14:36] webm0nk3y: Hell NO, this is my working canonical data [14:36] pgraner, ahh... [14:46] pgraner, when you got to https://one.ubuntu.com/account/machines/, which machines show up? [14:46] webm0nk3y: [14:47] Computer Date Added [14:47] air (tt3KVTmRwgM8qRXh5PhN) 26 Feb 2010 [14:47] desktop (0CbL4P0jkQRj0GzTjNSw) 17 Feb 2010 [14:47] zorak (9K4HbMNXxGfb6R70FLm5) 17 Feb 2010 [14:47] pgraner, thanks [14:54] pgraner, when you setup air, this was a new machine right? not an upgrade and not on a computer that had Ubuntu One on it? [14:59] aquarius: can I bug you for a minute? I understand the DesktopCouch database requires authentication - but it's not simple username/password, but fanc [14:59] FND, yes [14:59] oauth [15:00] *fancy stuff which isn't easy to reproduce independently? background is that I'm working on a "regular" CouchDB app but would wanna allow users to connect to DC, optionally [15:00] has anyone done anything like this before? [15:00] it's not that fancy [15:00] :) [15:01] I remember seeing discussions about python-keyring and stuff, which might have scared me off [15:01] FND, is your app Python? [15:01] yes [15:01] webm0nk3y: yep new Lucid install [15:02] FND, then the easiest thing to do is use desktopcouch.records.server. You don't have to use the records API, but desktopcouch.records.server takes care of providing roughly the python-couchdb interface and handling all teh oauth stuff for you. [15:03] ah great - so I can do try: import desktopcouch.records.server except ImportError: import couchdb.server ? [15:04] so it will work on a headless server with python-couchdb, on Ubuntu desktop with DC [15:04] MEETING BEGINS [15:04] me [15:04] me [15:04] me [15:05] me [15:05] me [15:06] me [15:07] beuno: aquarius: rodrigo_: jblount: last call [15:07] me [15:07] me [15:07] Chipaca, why not just ping us to start with? :) [15:07] beuno: you should have MEETING BEGINS ping you :) [15:08] Chipaca, good idea! [15:08] * Chipaca rolls eyes [15:08] (typical manager delegating work) [15:08] * Chipaca is but an egg [15:08] delegating work to machines, isn't it all we do here? [15:08] DONE: lats of talk, little coding. Less than I would've liked on oauthdesktop. TODO: *lots* more talk. Shove oauthdesktop off on somebody else if possible (bad manager, doing coding! bad!). Talk some more; if you're in desktop+ and haven't talked with me by EOBD, ping me. BLOCKED: I refuse to be blocked NEXT: CardinalFang [15:09] me [15:09] I wish xchat groked alert lines. Mine alerts on "meeting" OR "begins". Quite a pain. [15:09] (well, in addition to silly talk) [15:09] DONE: fixed up and merged find-pid branch. Merged get-port program branch. Merged docs change that elucidates put_record mutation of argument. Lots of merging! [15:09] TODO: Help kenvandine get d-c packaged. [15:09] BLOCKED: None. [15:09] next, urbanape, winner of three gold medals! [15:09] DONE: Finished phones/ ajax branch, submitted for review. [15:09] TODO: Land it, start in on a new contacts/ branch. [15:09] TOTO: I bless the rains down in Africa! [15:09] BLOCK: None [15:09] teknico: europe [15:09] DONE: reviewed and integrated another branch from beuno; looked into local sync problem [15:09] TODO: finish fixing the local sync problem; removing the ME contact from the contacts web ui; showing the web desktop+ guys around our phone sync code [15:09] BLOCK: none [15:09] next: dobey [15:09] urbanape, I rope? [15:09] ☺ DONE: Found/fixed bugs in StorageThrottlingFactory move, More CP button work [15:10] ☹ TODO: Finish branch to add Connect to CP, Finish the rest of the CP work [15:10] ☹ BLCK: None. [15:10] vds: che l'italiano dici? [15:10] DONE: investigated on problems with web/phones/test_views, fixed funambol json connector, updated trunk to use new funambol_cared revno, investigated on zombie contact again but not had time to really focus on it [15:10] TODO: re-land patch_13, continue the invetigating on contact zombies [15:10] BLOCKED: no [15:10] beuno: please [15:11] DONE: Landed the better-phone-index branch, dupe detection and merging is about to land [15:11] TODO: Kill the me contact, fix the oopses related to it, figure out why I can no longer sync my phone on production [15:11] BLOCKED: No (finally!) [15:11] aquarius, bring it home [15:11] DONE: numerous small music store things, like translatable names; phone meetings; apiservers rollout [15:11] TODO: work with rodrigo on download progress; make library page links work; #oppdev talk [15:11] BLOCKED: only got ten fingers [15:11] rodrigo_, go for it [15:11] • DONE: Vacation. Notes problems fixing. Music store downloads polling [15:11] • TODO: Conflict resolver tool in pair tool. Make sandy's snowy test suite work with our server (http://git.gnome.org/cgit/snowy/tree/api/tests.py). Discuss with jdo and aquarius about oauth token per app, not per machine? Add jslint tests to check. & in note titles. [15:11] • BLOCKED: no [15:12] nobody next, right? [15:12] aquarius, spacebar <= forehead [15:12] CardinalFang, to quote the late great Eric Morecambe, the spaces between the notes might be the important thing, but you still need the notes [15:14] notes do help pay the rent. [15:14] DONE: Some html and css stuff for the music store, trying to figure out a way to better handle the phone sync instructions [15:14] TODO: Phone sync instructions parsing and learning. Keep Lernid on in the background to learn how to be a better developer during "Opportunistic Developers" week. [15:14] BLOCKED: Never! [15:15] vds: yeah, my italian sucks :) [15:15] dobey: nope! :) [15:15] heh [15:16] that was valid italian? [15:16] MEETING ENDS. Thanks everybody! [15:17] aquarius, John Cage would disagree ;-) [15:33] pgraner, I may be looking to something strange... [15:33] pgraner, http://paste.ubuntu.com/386297/ and http://paste.ubuntu.com/386298/ seems to be equal [15:33] pgraner, do you have two equal logs in your disk? [15:38] facundobatista: they are not the same: look at http://paste.ubuntu.com/386362 that is the ls -al of the log directory, they are a few bytes difference [15:40] facundobatista: also it might be helpful if you guys put hostnames into the log files, it really gets confusing trying to figure out what log came from where [15:42] pgraner, they have similar sizes because they rotate per size [15:43] pgraner, the problem is that I don't have a relationship between your pastebin and the real log name [15:45] facundobatista: pastebin 386297 == syncdaemon.log.2010-02-23_08-50-33 & pastebin 386298 == syncdaemon.log.2010-02-23_11-12-11 [15:47] pgraner, ok [15:49] facundobatista: they are easy to coordinate, I ran the following to get the pastebin entries: for file in sync*; do pastebinit -i $file -b http://paste.ubuntu.com; done [15:50] facundobatista: so if you look at the list in the bug they are in order with the zero length files removed [15:50] pgraner, the problem is that "sync*" is disk order, not alphabetical one [15:51] kenvandine, https://edge.launchpad.net/desktopcouch/trunk/0.6.2 [15:51] kenvandine, new release of desktopcouch [15:51] facundobatista: nope they came out exact [15:51] pgraner@zorak:~/.cache/ubuntuone/log$ for file in sync*; do echo $file; done [15:51] syncdaemon-exceptions.log [15:51] syncdaemon-exceptions.log.2010-02-17_19-51-14 [15:51] syncdaemon-exceptions.log.2010-02-19_09-44-27 [15:51] syncdaemon-exceptions.log.2010-02-20_08-54-17 [15:51] syncdaemon-exceptions.log.2010-02-20_09-03-46 [15:51] syncdaemon-exceptions.log.2010-02-23_08-50-32 [15:51] syncdaemon.log [15:51] syncdaemon.log.2010-02-23_08-50-33 [15:51] syncdaemon.log.2010-02-23_11-12-11 [15:51] syncdaemon.log.2010-02-23_12-25-35 [15:51] syncdaemon.log.2010-02-26_15-45-03 [15:51] syncdaemon.log.2010-02-27_15-46-43 [15:52] facundobatista: either way pastebinit returns the pastbin URL, just match them up throwing out the zero length file names and you'll have the proper matching [15:52] pgraner, thanks! [15:53] pgraner, question... I'm seeing strange stuff in these logs [15:53] pgraner, these files you once had in the server... when you uploaded them? [15:53] Feb-23, or before? [15:53] facundobatista: before [15:54] pgraner, I'm looking into the files of your second machine, and they appear to be new in the disk [15:54] facundobatista: I had desktop & zorak on karmic and did an upgrade to lucid which broke syncing [15:54] pgraner, I mean, the sytem is finding all the files new in the disk, not having metadata at all for them [15:54] facundobatista: so I removed the two from ubuntu one [15:54] pgraner, how do you removed them? [15:54] facundobatista: deleted the Ubuntu One directory [15:55] facundobatista: readded the computer to U1 [15:55] pgraner, how do you deleted the Ubuntu One directory? [15:55] facundobatista: then synced, and it moved all the files from the server back down [15:55] pgraner, do you deleted the folder using nautilus? command line? other programs like mc? [15:55] facundobatista: I did a rm -rf "Ubuntu\ One" [15:56] pgraner, ok [15:56] facundobatista: and did the same process to the other computer [15:56] facundobatista: both were working fine for a few weeks [15:56] facundobatista: then on Fri I went to add air into the mix and noticed that files were missing off the server [15:57] pgraner, "rm -rf" generates a delete on each file, and that removes the files in the server [15:57] facundobatista: the files were still there for weeks after I did that [15:58] facundobatista: the U1 daemon was not running at the time nor was I on a network [15:58] pgraner, maybe because the client didn't have the opportunity to remove them from the server [15:58] pgraner, the daemon has stuff inside to know what you did while he was not running... he later found the deleted files, and removed everything [15:59] facundobatista: your missing the point after I did that on a clean Ubutnu One dir is synced all the files on the server back down to the client [15:59] pgraner, in which machine? [16:00] facundobatista: then why did it sync everything for weeks, even when I added new files, then one day wake up and decide to delete everything but leave only the directory structure? [16:00] facundobatista: on both [16:01] pgraner, we have a bug that is hitting us all of the time, and that I saw in your logs, that the client gets stuck [16:01] so the deletion may have been latent [16:01] pgraner, then, something happened that restarted the daemon [16:02] reboot [16:02] pgraner, and the deletion was there (we call it 'trash'... those files that we tried or should have tried to delete but we couldn't) [16:02] so, we got the trash, and removed all the files [16:02] pgraner, at the same time it found the stuff in disk, and tried to upload [16:03] pgraner, that surely created a mess and maybe because that we're seeing dirs and no files [16:03] pgraner, also, we prioritize metadata and not content, so makedirs may have got to the server first [16:03] facundobatista: strange I was syncing for weeks with no prob [16:04] facundobatista: I added lots of data and it was working fine [16:05] pgraner, regarding trash, I found 972 lines like: [16:05] 2010-02-23 08:52:57,280 - ubuntuone.SyncDaemon.local_rescan - INFO - unlink from trash: share_id: '' parent_id: '9cbead56-f9e9-41e6-bb56-bae9df502961' node_id: '0bf10521-f6a1-4c01-9536-39c9b4d7a6ad' [16:05] that's why I pointed to that... [16:05] looks like the syncdaemon started up last tuesday then [16:06] webm0nk3y: startup? It should have been running, I used to be able to tell by the applet, but now its not there anymore [16:07] webm0nk3y: so your telling me one machine was not connected then magically started and whiped everything out? [16:10] pgraner, I meant on the machine where the files were deleted === beuno is now known as beuno-lunch [16:24] webm0nk3y: I did the same procedure on both computer exactly I deleted the U1 directory while offline, removed the computers from the U1 web interface, reauthorized them and they both synced with all the files that were on the server and worked for weeks [16:24] webm0nk3y: and I did the procedure one computer at a time and waited for the first computer to sync prior to doing the 2nd one [16:27] pgraner, in your second machine, the SD process started on 2010-02-23 08:50:33,253, and it had all those trash full, waiting [16:30] facundobatista: at this point I don't know, this should have been a simple. "I want to get rid of my local crap and give me whats on the server" operation [16:30] pgraner, mmm... I understand [16:30] hi kenvandine, CardinalFang: I understand there are some desktopcouch bugfixes that need to get released and uploaded to lucid, and I'd like to help with that. where can I start? [16:31] pgraner, discard everything locally and start from scratch [16:31] statik, last i looked, the fix branch was still pending review [16:31] pgraner, removing the files is not the way to achieve it [16:31] statik, but i am quite anxious to get it into lucid [16:31] it makes gwibber suck way less :) [16:31] Chipaca, in your GUI plans, did you thought about having some way to trigger something like ^ ? [16:32] kenvandine, statik, I think all is ready. I closed the milestone and uploaded a source tarball an hour ago. [16:32] excellent [16:32] statik, can you upload that? [16:32] kenvandine: yessir I will get on it now [16:32] awesome [16:32] CardinalFang, thanks [16:32] * kenvandine loves statik having upload rights :) [16:32] * Chipaca does too [16:33] facundobatista: something like what, sorry? [16:33] CardinalFang, thanks for getting that release done, it seems to really make gwibber start reliably [16:33] facundobatista: ah, the "just nuke everything, already"? [16:33] kenvandine, my pleasure. [16:34] Chipaca, a "discard everything and sync back with what's in the server" button [16:34] statik, I want to help test the package before you upload. [16:34] Chipaca, maybe with a shorter name [16:34] facundobatista: sounds like something we could do for mutant mantis [16:34] CardinalFang: ok, I'll upload to the hackers nightly PPA before putting it to lucid [16:34] Rawk. [16:35] and talk with you about testing [16:35] i need a 500GB SSD, I keep having to delete build trees [16:35] * kenvandine could use one too [16:36] statik: easy, get 500GB of RAM, and just make a ramdisk [16:36] *easy* [16:36] * kenvandine chuckles [16:36] that is some ceo-level handwaving chipaca. careful or you'll get promoted [16:37] * Chipaca rubs his hands gleefully [16:37] excellent. [16:45] statik: Do you have an extra drive bay? [16:46] jblount: no, not even a cd drive. [16:47] * statik hugs his tiny x200s [16:47] * jblount is quietly contemplating losing his disc drive for a small ssd / big hd combo === beuno-lunch is now known as beuno [16:52] jblount: is it a hard mod? [16:52] * jblount looks for the url [16:52] pfibiger: I don't think so [16:53] ah, found it [16:53] looks easy [16:53] kenvandine, any particular gwibber bug that I should mention in this desktopcouch changelog? [16:53] $200 gets you the mounting hardware plus an external enclosure for the dvd drive you pull out [16:54] so $200 + $300 for the 80gb intel ssd. [16:54] hmm [16:55] statik, one sec [16:58] statik, 519444 [16:58] thanks [17:05] statik, I put some notes in the release changelog, fwiw. [17:08] if someone has some corrupted metadata. The error they are getting 11087e34.... Would the directory structure be 1/10/87/11087e34... [17:11] i am used to seeing numbers like 617e34...which is easy ~/.local/share/ubuntuone/syncdaemon/vm/shares/6/1/7/617e24... [17:12] CardinalFang: oh, thanks! [17:14] CardinalFang: I'll use that instead of what i was writing up by looking at the commits. too bad uscan doesn't download that from launchpad, i had totally missed it [17:30] duanedesign, i don't think so... could you please give the bug number? I believe syncdaemon does only a/b/c/abc metadata partitioning (if this can be called this way) [17:33] rye: ok thank you... [17:33] bug 530092 [17:33] Bug 530092 on http://launchpad.net/bugs/530092 is private [17:37] ok, hacked a script for detection of blank notes, now need to make the fix [17:37] duanedesign, unmarked that as private since that report does not contain anything personally identifiable more than launchpad login could give [17:41] rye: so the key error is caused by blank notes? [17:41] duanedesign, the pickle loading seems to be related to fsm, which means that something has probably removed... file_shelf.py, _load_pickle raises KeyError if there is except (IOError, OSError) [17:41] duanedesign, no, that was unrelated to this bug report, we are going to provide the steps on how to fix blank notes [17:41] lol, ok [17:41] :P [17:42] duanedesign, and I decided to create the script to make people with 10+ notes happy [17:44] Is anyone having problems with the web interface of Ubuntu One? [17:46] rwlyonsjr, more specifically? [17:46] When I log into the web interface, I intermittently can not see any of my files [17:47] I am also not able to sync my notes at all.... I saw the post on the blog that said they were switching things to read-only, but I can not see anything at all [17:54] hello?? [17:54] would the Ubuntu One note issue be affecting syncing with tomboy [17:55] Technoviking, I did not see anything in the post that would indicate that...they only said it would be read only [17:56] rwlyonsjr, Technoviking, the notes are now in read-only on the web interface and Tomboy sync is failing due to a different issue that is now identified and being worked on [17:56] rwlyonsjr, are you receiving a Something Wrong (500) page? [17:57] rye, thanks! Any info on files not showing up at all on the web interface.... The problem is intermittent... [17:58] rwlyonsjr, hm [17:59] rye, when I log on to the web interface it shows I have no files at all, then I hit refresh and they came back.... another refresh and they were gone again... Just in and out like that, with no real pattern [18:02] rwlyonsjr, confirming [18:02] rwlyonsjr, no, wait, this is my testing account, it has 0 files [18:03] rye, I just tried again... same results for me.... No files, I have not refreshed yet [18:04] with a refresh it comes back again.... Looking at the issue more, it may be that the "My Files" folder is not showing up on first log-in for me.... It goes to the "Shared with me Folder", with no other folders viewable... [18:13] rye, were you able to duplicate the issue? [18:14] rwlyonsjr, how many files do you have in ~/Ubuntu One ? [18:14] rye, standby [18:15] rye, about 50-75, some of them are in folders.... it is not a lot of data [18:16] rwlyonsjr, ok, I think I know the reason and it has something to do with web interface aborting information loading when it takes more time than expected. Since for every file a new background request is created this may lead to the problems. [18:17] desktop+ guys, need info on why web interface would want to load every file info separately via separate XMLHttpRequest [18:17] even firefox has a limit on concurrent connections to the server [18:19] ok..... is there something I can do to help? [18:19] jblount, urbanape, beuno: ^^ [18:20] * beuno looks up [18:20] right [18:20] we need to re-work /files [18:21] we have a call on Wed to start planning that :) [18:25] rye: basically, historical reasons. That part of the code hasn't changed since first implemented, even though the layout (and a lot of the js accompanying it) has [18:25] and what beuno said. [18:26] urbanape, beuno, because that started to time-out for me in my IRC logs folder which has only 180 files. [18:26] rye, can yuo test on edge as well? [18:27] there's some new code from jdo that makes listing faster [18:27] rye: I'm not disputing it, just making excuses. *grin* [18:37] thisfred, may I poke you about update_fields again, you told me that it is possible to use ['application_annotations','Tomboy','some-property'] as a key for update_fields. May I inquire about the syntax of update_fields in this case? [18:37] beuno, testing the edge [18:38] rwlyonsjr, could you please check your files on https://edge.one.ubuntu.com as well ? [18:38] rye, sure.... Standby [18:39] beuno, I like the compiz effect on non-responding window when I load my IRC logs... :) [18:40] rye: thanks [18:41] rye, The problem persist there, however it does not happen as often at all.... Instead of every other refresh, I can refresh several times before my files vanish [18:41] rye, can I get back to you on that? have to briefly go out to walk the dog now [18:41] thisfred, say hello to the dog from me :) [18:41] will do bbiab [18:41] hm, maybe python keys in dicts do not need to be scalars like in Perl?... [18:43] nope... TypeError: unhashable type: 'list' [18:45] Technoviking, the notes are now under heavy fixing. There are issues with WYSIWYG editing and saving as well as displaying the result of the save. Tomboy note sync is also affected by HTML to XML conversion and note blanking that has happened earlier and now we are putting up the solution for this. [18:57] rye: keys can be composite, but have to be immutable types, so you can't have lists [18:57] rye, but tuples work [18:58] hi [18:58] * rye went to find out what tuple means... [18:59] i hve a little question about storing and editing large files in the cloud [18:59] rye, ('foo', 'bar', 'baz') rather than ['foo', 'bar', 'baz'] [18:59] so for that method: [18:59] is only the part that i edited downloaded and uploaded or the whole file? [18:59] def update_fields(self, record_id, fields, cached_record=None): [19:00] rye: fields could be of the form: {('application_annotations','Tomboy','some-property'): new_value} [19:01] Kandanalor: currently, the entire file is uploaded again [19:02] thisfred, File "/usr/lib/pymodules/python2.6/simplejson/encoder.py", line 260, in iterencode [19:02] return _iterencode(o, 0) [19:02] ValueError: keys must be a string [19:03] rye, you are using update_fields, correct? You can't set keys like this in a record directly [19:03] path = ('application_annotations', 'Tomboy', 'last-sync-revision') [19:03] self.notes_db.update_fields(self.uuid, \ [19:03] { path: self.last_sync_revision + 1 }) [19:03] thisfred, ^ [19:04] rye, and you're using desktopcouch trunk? [19:05] Kandanalor: and it should only get uploaded again when you close the file === teknico is now known as teknico_away [19:05] thisfred, i am using lucid lynx version, and I'd really want to have it working in karmic as well :) [19:06] rye: it will only work if update_fields in server_base.py looks like this: http://friendpaste.com/3XtkfLWeUNaXHv1JE7qWva [19:06] I am not sure whether that has been uploaded to lucid yet [19:07] Kandanalor: you don't need to /msg me [19:07] k [19:08] so does anybody know when editing parts of a file without downloadig and reupping the whole file would be available? [19:08] Kandanalor: there's some ideas floating around about how to do diffs, but it only would resolve part of your issue [19:09] yeah ok [19:09] Kandanalor: primarily, a large file, such as an encrypted fs would still only get diffed and synced after it was closed. we wouldn't want to sync arbitrary bits at random points while the file was open [19:09] that could be bad [19:09] yes I understand [19:10] thisfred, no, my server_base.py does not look like this [19:10] rye, ah, then it does not yet work like that... :( [19:11] think Ill have to think about this problem maybe I find a solution that works for me [19:11] thisfred, i believe I will need to read all info from couchdb, then update fields and save that... hitting json exception on the way... probably... [19:11] then I just wanted to thank you for your work. I think you do a great thing to the community! [19:11] so bye [19:12] :) [19:12] rye: if you just load the document, change the field, and save it, you won't get any json exceptions [19:12] Kandanalor: thanks [19:13] rye: the only thing that can happen, that the update_fields method protects against somewhat, is a conflict, if something else has written to the same record in the meantime [19:13] thisfred, but I am changing application annotations. isn't that special for couchdb? [19:13] dc [19:14] rye: not for couchdb, for desktopcouch it's special in that you have to access them like this: record.application_annotations['Tomboy']['some_field'] but under the hood, application annotations is just a regular json dictionary. We just want to hide it from people who don' [19:15] t need it [19:15] rye: i.e if you loop through all the fields of a record, application_annotations won't show up [19:16] thisfred, awesome. put_record works with simple fetch doc, update doc, put doc [19:17] now I need to check whether that works in carmic [19:17] rye: I think it will [19:18] rye: though you should have a try: except: around the put, that can handle a resource conflict [19:19] depending on how bad it is to get an error sometimes [19:27] Can .u1conflict files be deleted safely? [19:33] Bookman: The way to resolve conflicts is to pick from the original file (if there is one) and the conflict file that you wish to keep and to delete the conflict file or move the conflict file over the original one, depending on your choice. [19:38] rodrigo_, joshuahoover: http://paste.ubuntu.com/386500/ [19:39] rodrigo_, joshuahoover: tomboy needs to be shut down prior to executing this script. I am still learning python, so, probably it does not pass any pylint tests... hm, need to check that [19:40] rye: nice work! [19:40] wow, 7.13/10 [19:40] so tomboy needs to be shutdown...anything else? [19:41] joshuahoover, no, it will make sure desktopcouch is started properly, then it will find out the dir for tomboy within xdg directories, read all the notes that are there, load these notes from couchdb and check whether content is blank. If it is, then we bump the last-sync-revision in couchdb and try to act naturally. [19:41] joshuahoover, let me check this in karmic... [19:42] and it would be really nice if someone with python background had a look at that :) [19:42] rye: ran fine in my one karmic env...i didn't have any notes that were blank previously [19:42] joshuahoover, now you have :-P :) [19:42] ok, /me is back to being serious [19:45] wow, it worked in karmic as well [19:46] this script does not check resource conflict since it does not expect anything to modify the notes between the read and save operation [19:47] rye: for a script like this I think that's fine: if you get a conflict error, just run it again [19:47] depending on who the target audience is [19:48] thisfred: we'd point users to run this who were affected by bug #524339 [19:48] Launchpad bug 524339 in ubuntuone-servers "Tomboy notes are blank after sync" [Critical,Fix released] https://launchpad.net/bugs/524339 [19:48] joshuahoover: right, in that case maybe mention that conflict errors could occur and aren't a real problem [19:49] joshuahoover, but we will still need to have a hope that the user has not compacted their database [19:49] thisfred: and just run it again if you do get conflict errors? [19:49] they'd be rare enough that I don't think it warrants defensive coding against them in such a script [19:49] yes [19:49] thisfred: cool [19:49] rye: but isn't that an issue either way? manual or using your script? [19:50] joshuahoover, true [19:50] rye: so, i think this script is MUCH better than the manual steps, which are a huge hassle for most users, especially if there are a lot of notes needing fixed [19:51] joshuahoover, but if they have synced these blank notes to the couchdb then things start to get more complicated, we will need to dig through revisions and find those which are not blank. And I don't know how to browse through revisions in dc, only futon... [19:52] rye: ah, true [19:55] rye: so thoughts on how to best guide users through this? [19:56] rye: seems like we could have them try your script first (least painful) and then if it doesn't we suggest...???? [20:00] I'm following the quickly tutorial and it says that if the (desktop couch) page I'm redirected to doesn't work, I probably just need to clear the browser cache. I've tried that and its still not working, also tried in a different browser. What else could be wrong? [20:03] wharp: what is the url of the page you're redirected to? [20:05] http://localhost:35608/_utils [20:08] wharp: and it comes up with an error? [20:09] thisfred, rye: if the futon web interface doesn't come up, what do you do? does that mean couchdb isn't running? [20:09] joshuahoover, if this doesn't work we suggest go to futon and browse through revisions via 'Older revision' and then bump the version there [20:09] joshuahoover: what does it say? asking for a login? [20:10] thisfred: trying to help wharp ^^ [20:10] page not found [20:11] what/where is futon? [20:11] joshuahoover, if couchdb is running then futon is running, but it might not be running exactly on the port that is written in couchdb html file [20:11] page not found implies couchdb not running yes, unless you have done something to remap localhost, if that is even possible [20:11] wharp, http://paste.ubuntu.com/386516/ [20:11] wharp: futon is couchdb's admin web interface [20:12] rye: browse through revisions via 'Older revision'? not sure how to tell a user to do that without wading through (potentially) tons of documents [20:12] well file:///home/wes/.local/share/desktop-couch/couchdb.html loads [20:12] ah, yes, the portnumber may be out of sync [20:12] wharp, that script will launch firefox and connect to your desktopcouch instance, w/o couchdb.html file which may be out of date [20:12] ok [20:13] joshuahoover, there is [ Showing revision 14 of 14 ] and [ ← Previous Version | Next Version → ] links on every document that is in couchdb in futon [20:13] thisfred, is it possible to browse through older revisions in desktopcouch? [20:14] rye: ah, ok, i didn't see that before :) [20:14] rye: no, I don't think so [20:14] ah, that works, so I should just upset the couchdb.html with the correct port number? [20:15] rye: I think if you have the exact revision number, you can still access them by that url, but that's sort of a back door [20:15] thisfred, futon can :) [20:15] rye, ok, if futon can do it, it's probably an intentional feature [20:15] thisfred, ?revs_info=true [20:15] I thought it was discouraged to rely on them [20:16] rye ah ok [20:16] and "_revs_info":[{"rev":"18-e8f76906531ed01e37b51972e25a95f0","status":"available"} ... ] [20:16] that will work for regular http access as well then [20:16] not sure how to ask for that but that might be a nice to have feature in such cases... [20:17] rye, it will only work as long as you don't compact though. After that, the revision numbers will be there, but not the actual revisions [20:17] that's probably what status available means [20:18] thisfred: i can't remember, do we automatically compact the database for the user? [20:18] rye, so if you do a regular http call into couch instead of through futon, the ?revs_info=true parameter will work. I'm not sure if we can do this through python [20:19] joshuahoover: AFAIK not yet [20:19] thisfred: well, that's good in this case :) [20:19] yep :) [20:19] joshuahoover, no, we don't compact, but some users (like me) like to press whatever buttons they find... [20:19] another argument against premature optimization ;) [20:20] joshuahoover, thisfred i believe there are plans to start compacting users database much like replication is being performed... [20:21] rye: yes, i think that is correct [20:21] rye: yes, and we definitely should, since we'll use up the entire hard drive if we don't [20:22] thisfred, true... btw, is there any particular reason why gwibber started putting the messages to couchdb, not only configuration and accounts but messages [20:23] It puzzled me while I was writing http://blog.rtg.in.ua/2010/02/ubuntu-one-internals-notes.html but I came up with nothing really useful [20:23] rye: because they could, I guess ;) I think the messages make more sense to store in d-c than the configuration, myself: configuration should be in easy to reach places. Flat text files, preferably [20:23] since if stuff breaks, you don't want to have to learn how to use couchdb first [20:24] But I may be in the minority there. Doesn't mean the majority's right though ;) [20:26] rye: desktopcouch is about storing structured data, and sharing it between computers (and, in the future, users) I think of twitter messages as data, more than I would application configuration [20:27] of course it generates quite a bit of data and traffic, but I think that's good, we'll shake out some more bugs soon [20:40] rye: ok, so i'm going to recommend people run your script first, if that doesn't work, then i'm going to give steps for going through the revisions (noting this will only work if the database has not been compacted)...for those steps, will the user find the revision with the content (versus the notes that are blank) and set the last-sync-revision to the maximum plus 1? [20:46] joshuahoover, let me try that.... [20:46] :) [20:48] joshuahoover, that won't work out of the box, the _rev will need to be updated as well [20:48] rye: can that be set manually? (the _rev) [20:49] joshuahoover, hm, does not work... still resource conflict [20:49] rye: just the _rev max + 1? [20:50] rye: yeah, that's what i thought....then the user would probably be best to modify the content and increase the last-sync-revision to max + 1? i think that will up the _rev and take care of the last-sync-revision [20:50] rye: this is a pretty horrible process for the user [20:51] the user will need to copy the last non-empty content to the latest revision and then my script will be able to bump the revision but this is too much work [20:51] rye: yeah...hmmm... [21:12] rye, wow, thanks for the script! [21:13] rodrigo_, feel free to tell me what you think about the code itself :) [21:48] Aw, I got an email messaage, ""Comee back to Dropbox!!" [21:49] CardinalFang, ask them if they have integration with Ubuntu One [21:49] :) [21:51] I had to get off line earlier, but is there still a problem with the web interface displaying files every time? [22:37] thisfred: do we limit couch syncing by using the "excluded_names" key in the ubuntu_one_pair_record doc within the management database? [22:38] joshuahoover: yes, that has the names of databases that should not be synced [22:39] cool, kudos to duanedesign for providing that answer in our forums! [22:39] thisfred: is that documented somewhere already? [22:39] joshuahoover: not sure, that's a question for CardinalFang/aquarius [22:40] thisfred: ah, ok...i was creating an faq since this was the first i'd ever seen/heard about this [22:40] yeah, my guess would be no [22:41] joshuahoover, It's not documented because it's not well supported or tested. It's also not thought-out very well. [22:41] CardinalFang: ah, ok :) [22:42] We provide no API for anyone to query or change it, and it is pairing-specific. [22:43] https://answers.edge.launchpad.net/desktopcouch/+question/95878 [22:43] answers that question [22:44] aquarius: great! thanks! [23:07] CardinalFang, why would desktopcouch-service be pegging the CPU [23:07] ? [23:08] aquarius, Hrm, I don't know. [23:09] aquarius, I'm afk for 30 minutes. I'll be back to see if you say anything. [23:10] we think it's d-bus === jamalta is now known as jamalta-afk [23:13] i have two bug reports with similar erors. I am looking for any help to better understand the issue :) _ssl.c:326: error:0B084009:x509 certificate routines:X509_load_cert_crl_file:PEM lib [23:13] bug 529168 [23:13] Launchpad bug 529168 in ubuntuone-client "ubuntu one x509 load error on start" [Undecided,New] https://launchpad.net/bugs/529168 [23:19] bug 522285 [23:19] Launchpad bug 522285 in ubuntuone-client "Authorization Error - [Errno socket error][Errno 185090050] ... nes:X509_load_cert_crl_file:system lib" [Undecided,Incomplete] https://launchpad.net/bugs/522285 [23:29] well, its family time. i leave my client open if anyone has any input. Have a nice evening all. [23:30] oh and aquarius i enjoyed your session today, good job.