Login | Register
My pages Projects Community openCollabNet

Discussions > dev > fsvs bails out

fsvs
Discussion topic

Hide all messages in topic

All messages in topic

Re: fsvs bails out

Author pmarek
Full name P.Marek
Date 2006-03-29 08:11:38 PST
Message On Monday 27 March 2006 20:22 Gunter Ohrner wrote:
> Am Sonntag, 26. März 2006 15:08 schrieb Philipp Marek:
> > Try
> > $ fsvs sync-repos -r -1
> > (where -1 == HEAD)
>
> Maybe that's interesting for you: That works on i386, but shows no effect
> on AMD64 where fsvs still tries to check out revision 0.
Thank you. The line reads as
    opt_target_revision=​strtoull(optarg, &cmd, 10);
which seems to work on 32bit (despite -1 not being unsigned :-).
I'll do a special-case for -rHEAD (which should be the default anyway).


Regards,

Phil

Re: fsvs bails out

Author Gunter Ohrner <G dot Ohrner at post dot rwth-aachen dot de>
Full name Gunter Ohrner <G dot Ohrner at post dot rwth-aachen dot de>
Date 2006-03-27 10:22:33 PST
Message Am Sonntag, 26. März 2006 15:08 schrieb Philipp Marek:
> Try
> $ fsvs sync-repos -r -1
> (where -1 == HEAD)

Maybe that's interesting for you: That works on i386, but shows no effect
on AMD64 where fsvs still tries to check out revision 0.

Greetings,

  Gunter

--
*** Powered by AudioScrobbler --> http://www.last.fm/u​ser/Interneci/ ***
21:07 | Leaves' Eyes - Mourning Tree
21:04 | Leaves' Eyes - New Found Land
21:02 | Leaves' Eyes - Amhràn (Song Of The Winds)
20:58 | Leaves' Eyes - Misseri (Turn Green Meadows Into Grey)
*** PGP-Verschlüsselung bei eMails erwünscht :-) *** PGP: 0x1128F25F ***
Attachments

Re: fsvs bails out

Author pmarek
Full name P.Marek
Date 2006-03-26 23:25:42 PST
Message > One question concerning my possible use case if the tests are successful:
> (If this is off topic here and should move to the user's list, please say
> so.)
Yes, we're moving to users@.

> I have a production system A, a backup server B which currently always has
> a few hours old snapshot image of A's file systems. Both system are
> connected by a relatively thin pipe.
>
> Is there any way to seed fsvs using this constellation, so fsvs can import
> the backup snapshot on B so that A can immediately start pushing updates
> to it? Or is the only way to make a full import from A to B during which
> all files will have to be transmitted?
If I understand you correctly:
- you want to retrieve the current status off B?
  $ fsvs init svn://B/...
  $ fsvs sync-repos
- you want to move to A
  $ fsvs init svn://A/...
- get updates
  $ fsvs update

Is that what you want? I'm not sure about that.


Regards,

Phil

Re: fsvs bails out

Author Gunter Ohrner <G dot Ohrner at post dot rwth-aachen dot de>
Full name Gunter Ohrner <G dot Ohrner at post dot rwth-aachen dot de>
Date 2006-03-26 14:43:19 PST
Message > Yes, the default target revision is (wrongly) 0.
> Try
> $ fsvs sync-repos -r -1
> (where -1 == HEAD)

Ok, the test now seems to work. It's currently syncing a file list.

One question concerning my possible use case if the tests are successful:
(If this is off topic here and should move to the user's list, please say
so.)

I have a production system A, a backup server B which currently always has
a few hours old snapshot image of A's file systems. Both system are
connected by a relatively thin pipe.

Is there any way to seed fsvs using this constellation, so fsvs can import
the backup snapshot on B so that A can immediately start pushing updates
to it? Or is the only way to make a full import from A to B during which
all files will have to be transmitted?

Greetings,

  Gunter

--
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
> Beim Thema Jungfrauen empfehle ich rwth.informatik.* !
Ich glaub er meinte mit Jungfrauen nicht Frauen, die wie Jungs aussehen
;-)
        -- <news:c7j6gq$6rr​$04$1@news.t-onlin​e.com>
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
+ PGP-verschlüsselte Mails bevorzugt! +
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
Attachments

Re: fsvs bails out

Author pmarek
Full name P.Marek
Date 2006-03-26 05:08:23 PST
Message On Sunday 26 March 2006 11:09 Gunter Ohrner wrote:
> Am Samstag, 25. März 2006 12:39, schrieb Philipp Marek:
> > Try this patch.
>
> Mh...
>
> $ rm /var/spool/fsvs/* -Rf
> $ rm tmp/ -Rf
> $ md tmp
> $ cd tmp/
> $ fsvs init svn://192.168.42.1/home
> $ fsvs sync-repos
> Synchronized to revision 0.
Yes, the default target revision is (wrongly) 0.
Try
    $ fsvs sync-repos -r -1
(where -1 == HEAD)


Sorry for the inconvinience.

Please report any problems!


Grüße,

Phil

Re: fsvs bails out

Author Gunter Ohrner <G dot Ohrner at post dot rwth-aachen dot de>
Full name Gunter Ohrner <G dot Ohrner at post dot rwth-aachen dot de>
Date 2006-03-26 01:09:21 PST
Message Am Samstag, 25. März 2006 12:39, schrieb Philipp Marek:
> Try this patch.

Mh...

$ rm /var/spool/fsvs/* -Rf
$ rm tmp/ -Rf
$ md tmp
$ cd tmp/
$ fsvs init svn://192.168.42.1/home
$ fsvs sync-repos
Synchronized to revision 0.
$ $ svn ls svn://192.168.42.1/home
.emacs
.emacs.d/
.icons/
.kde/
.subversion/
conv_mimes.py
misc/
$ fsvs -d -v sync-repos
11:01:45.625 main[fsvs.c:398] optind=4 save=0 build=0 heap=0x538000
per_sts=248 action=sync-repos
11:01:45.625 waa__open[waa.c:302] reading
target /var/spool/fsvs/f6/7​d/3d74697ff84837acef​1a25c51395/ign
11:01:45.625 ign__load_list[ignore.c:393] no ignore list found
11:01:45.625 waa__open[waa.c:302] reading
target /var/spool/fsvs/f6/7​d/3d74697ff84837acef​1a25c51395/urls
11:01:45.625 waa__open[waa.c:315] got fh 3
11:01:45.625 waa__load_repos_urls[waa.c:149] found 1 urls
11:01:53.232 main[fsvs.c:446] heap=0x559000
11:01:53.310 waa__open[waa.c:299] tmp for
target /var/spool/fsvs/f6/7​d/3d74697ff84837acef​1a25c51395/dir
is /var/spool/fsvs/f6/7​d/3d74697ff84837acef​1a25c51395/dir.tmp
11:01:53.310 waa__open[waa.c:315] got fh 5
11:01:53.310 waa__open[waa.c:327] reallocate target name array to 7
11:01:53.310 waa__close[waa.c:369] filehandle 5 should
be /var/spool/fsvs/f6/7​d/3d74697ff84837acef​1a25c51395/dir
Synchronized to revision 0.
$

What am I doing wrong?

Additionally, "fsvs status" gives

11:05:22.415 waa__input_tree[waa.c:1143] INTERNAL BUG
  strings - root->strings > string_space

Unfortunately I did not get any meaningful backtrace. The binary was
compiled using the default makefile settings on Debian SID Pure64 (x86_64
platform) using gcc 4.0.3.

Greetings,

  Gunter

--
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
Nichts ist Idiotensicher, die Idioten sind einfach zu erfinderisch.
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
+ PGP-verschlüsselte Mails bevorzugt! +
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
Attachments

Re: fsvs bails out

Author pmarek
Full name P.Marek
Date 2006-03-25 03:39:42 PST
Message On Saturday 25 March 2006 11:00 Gunter Ohrner wrote:
> (Posting to dev at fsvs dot tigris dot org with a private copy to Philipp, as I don't
> know how long my subscription request to the ML will need to get through
> and if the ML rejects non-subscriber mails.)
dev@ and users@ are open, only announce@ is moderated.

> The problem might not be in fsvs because I tried to reuse a repository
> previously managed with a meta-data patched regular svn client. The error
> happened while checking out the existing repository into an empty test
> directory using "sync-repos". fsvs seems to choke on the timestamp of
> some files.
>
> I also sometimes gut problems with timestamps using the svn meta-data
> patch, so the bug may very well be a plain user error or in this patch.
> However, fsvs (as well as the svn meta-data patch) should probably allow
> a checkout of files even if they consider the timestamp to be invalid...
>
> The problem is that somehoiw a verbatim "svn:text-time : yes" seems to
> have been comitted for the directory misc/prog/openwrt/re​pos/db/revs/358
> (Which probably IS a user error... :-/ ), which obviously is not a valid
> time stamp.
Try this patch.

I'll do some kind of warning-system ASAP.


Thank you for reporting this problem, please do so in the future, too :-)


Regards,

Phil


diff -uw update.c update.c.new
--- update.c 2006-03-25 12:37:53.000000000 +0100
+++ update.c.new 2006-03-25 12:37:18.000000000 +0100
@@ -72,9 +72,11 @@
                /* for user and group we try to find the username, and
fallback
                 * to the uid. */
                i=strtoul(value->data, &cp, 0);
- STOPIF_CODE_ERR( cp == value->data, EINVAL,
- "cannot read uid in %s", value->data);
-
+ if (cp == value->data)
+ {
+ }
+ else
+ {
                while (*cp && isspace(*cp)) cp++;
                if (*cp)
                {
@@ -88,12 +90,15 @@
                DEBUGP("marking owner %s to %d",
                                value->data, sts->st.st_uid);
        }
+ }
        else if (0 == strcmp(name, propname_group))
        {
                i=strtoul(value->data, &cp, 0);
- STOPIF_CODE_ERR( cp == value->data, EINVAL,
- "cannot read gid in %s", value->data);
-
+ if (cp == value->data)
+ {
+ }
+ else
+ {
                while (*cp && isspace(*cp)) cp++;
                if (*cp)
                {
@@ -107,11 +112,11 @@
                DEBUGP("marking group %s to %d",
                                value->data, sts->st.st_gid);
        }
+ }
        else if (0 == strcmp(name, propname_mtime))
        {
- STOPIF_SVNERR( svn_time_from_cstring,
- (&at, value->data, pool));
-
+ if (!svn_time_from_cstr​ing(&at, value->data, pool))
+ {
                sts->st.st_mtim.t​v_sec=apr_time_sec(a​t);
                sts->st.st_mtim.t​v_nsec=apr_time_usec​(at) * 1000;
                sts->entry_status |= FS_META_MTIME;
@@ -119,17 +124,21 @@
                                value->data,
                                ctime(& (sts->st.st_mtim.tv_sec) ));
        }
+ }
        else if (0 == strcmp(name, propname_umode))
        {
                i=strtoul(value->data, &cp, 0);
- STOPIF_CODE_ERR( *cp || i>07777, EINVAL,
- "no valid permissions found in %s",
value->data);
-
+ if (*cp || i>07777)
+ {
+ }
+ else
+ {
                sts->st.st_mode = (sts->st.st_mode & ~07777) | i;
                sts->entry_status |= FS_META_UMODE;
                DEBUGP("marking mode \"%s\" to 0%o",
                                value->data, sts->st.st_mode & 07777);
        }
+ }
        else if (0 == strcmp(name, propname_special) &&
                        0 == strcmp(value->data, propval_special))
        {

fsvs bails out

Author Gunter Ohrner <G dot Ohrner at post dot rwth-aachen dot de>
Full name Gunter Ohrner <G dot Ohrner at post dot rwth-aachen dot de>
Date 2006-03-25 02:00:00 PST
Message (Posting to dev at fsvs dot tigris dot org with a private copy to Philipp, as I don't
know how long my subscription request to the ML will need to get through
and if the ML rejects non-subscriber mails.)

Hi!

I just tried to test fsvs 1.0.5 and as I ran into an error while testing I
send to this list as requested. ;)

The problem might not be in fsvs because I tried to reuse a repository
previously managed with a meta-data patched regular svn client. The error
happened while checking out the existing repository into an empty test
directory using "sync-repos". fsvs seems to choke on the timestamp of
some files.

I also sometimes gut problems with timestamps using the svn meta-data
patch, so the bug may very well be a plain user error or in this patch.
However, fsvs (as well as the svn meta-data patch) should probably allow
a checkout of files even if they consider the timestamp to be invalid...

The problem is that somehoiw a verbatim "svn:text-time : yes" seems to
have been comitted for the directory misc/prog/openwrt/re​pos/db/revs/358
(Which probably IS a user error... :-/ ), which obviously is not a valid
time stamp.

fsvs outputs this error message on stderr:

An error occured at 10:48:00.945: Bogus date (125003)
  in ac__up_parse_prop [update.c:113]: svn_time_from_cstring: (null)
  in ac__sync_uninit [sync.c:459]: reporter->finish_report:
ac__sync_change_file_prop
  in ac__sync_uninit [sync.c:466]: ac__sync_change_file_prop
  in main [fsvs.c:453]


The last lines of the -v -d log look as follows:

10:48:00.945 ac__sync_add_file[sync.c:266] in ac__sync_add_file
10:48:00.945 ac__up_add_entry[update.c:330] add entry
misc/prog/openwrt/re​pos/db/revs/358
10:48:00.945 ac__sync_change_file​_prop[sync.c:346] in
ac__sync_change_file_prop
10:48:00.945 ac__up_parse_prop[update.c:65] got property for 358:
svn:entry:committed-rev=88
10:48:00.945 ac__sync_change_file​_prop[sync.c:346] in
ac__sync_change_file_prop
10:48:00.945 ac__up_parse_prop[update.c:65] got property for 358:
svn:entry:committed-​date=2006-03-19T00:2​7:26.777440Z
10:48:00.945 ac__sync_change_file​_prop[sync.c:346] in
ac__sync_change_file_prop
10:48:00.945 ac__up_parse_prop[update.c:65] got property for 358:
svn:entry:last-author=gunter
10:48:00.945 ac__sync_change_file​_prop[sync.c:346] in
ac__sync_change_file_prop
10:48:00.945 ac__up_parse_prop[update.c:65] got property for 358:
svn:entry:uuid=de9c9​2fe-7908-0410-9c59-e​1f573f8e05f
10:48:00.945 ac__sync_change_file​_prop[sync.c:346] in
ac__sync_change_file_prop
10:48:00.945 ac__up_parse_prop[update.c:65] got property for 358:
svn:text-time=yes
10:48:00.945 ac__sync_abort_edit[sync.c:402] in ac__sync_abort_edit
Version fsvs-1.0.5:206


Greetings,

  GUnter

--
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
The Battle of Koom Valley is the only one known to history where both
sides ambushed each other. -- (Terry Pratchett, Men At Arms)
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
+ PGP-verschlüsselte Mails bevorzugt! +
+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+-+-+-+-​+-+-+-+-+-+-+
Attachments
Messages per page: