You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Kevin Pilch-Bisson <ke...@pilch-bisson.net> on 2001/09/12 16:50:02 UTC

Update problem recipe.

Using ra_local, with svn version 83, db-3.3.11, APR and HTTPD from this morning,
I produced the following (greek-repo contains a greek-tree)


The first problem (not getting iota) is due to the fact that adm_crawler.c:
svn_wc_crawl_revisions doesn't check for (on disk) existence of the target
when determining to report it missing.

The second problem is due to the fact that get_editor.c:
svn_wc_get_actual_target is not setting values in a specific case.

If that is fixed, then it will crash, because the entry->ancestor will be
NULL, since it can't find the thisdir entry.

If that is fixed, it will error out because the base_rev will be -1, which is
an illegal value in berkeley db.

If that is fixed, it will error out trying to find the node_id in the
transaction, which has been deleted (rightfully so).

The posted patch is missing the changes to two files: get_editor.c and
adm_crawler.c. Unfortunately, I lost my copy of it, but I will reproduce it 
shortly.

The changes in mod_dav_svn are (as Greg noticed), simply anchor target problems,
which could be dealt with later, but the rest are real bugs.

NOTE: my email hasn't been working properly for the last two days, so please 
reply to kevin@pilchie.homeip.net for now.

kevin@pilchie:~/projects/svn-test [737]$ ls
SVN/  greek-dav/  greek-repo/  greek-tree/  repos/
kevin@pilchie:~/projects/svn-test [738]$ svn co file:///home/kevin/projects/svn-test/greek-repo -d greek-local
A  greek-local/A
A  greek-local/A/mu
A  greek-local/A/B
A  greek-local/A/B/lambda
A  greek-local/A/B/E
A  greek-local/A/B/E/alpha
A  greek-local/A/B/E/beta
A  greek-local/A/B/F
A  greek-local/A/C
A  greek-local/A/D
A  greek-local/A/D/gamma
A  greek-local/A/D/G
A  greek-local/A/D/G/rho
A  greek-local/A/D/G/pi
A  greek-local/A/D/G/tau
A  greek-local/A/D/H
A  greek-local/A/D/H/chi
A  greek-local/A/D/H/omega
A  greek-local/A/D/H/psi
A  greek-local/iota
kevin@pilchie:~/projects/svn-test [739]$ cd greek-local/
kevin@pilchie:~/projects/svn-test/greek-local [740]$ rm iota
kevin@pilchie:~/projects/svn-test/greek-local [741]$ svn up iota
kevin@pilchie:~/projects/svn-test/greek-local [742]$ svn up
A  ./iota
kevin@pilchie:~/projects/svn-test/greek-local [743]$ rm -r A/C
kevin@pilchie:~/projects/svn-test/greek-local [744]$ svn up A/C
Ouch!  malloc failed in malloc_block()
Segmentation fault
kevin@pilchie:~/projects/svn-test/greek-local [745]$ cd A
kevin@pilchie:~/projects/svn-test/greek-local/A [746]$ svn up C
Ouch!  malloc failed in malloc_block()
Segmentation fault
kevin@pilchie:~/projects/svn-test/greek-local/A [747]$ svn up
A  ./C
kevin@pilchie:~/projects/svn-test/greek-local/A [748]$
-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kevin Pilch-Bisson                    http://www.pilch-bisson.net
     "Historically speaking, the presences of wheels in Unix
     has never precluded their reinvention." - Larry Wall
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Re: Update problem recipe.

Posted by Ben Collins-Sussman <su...@collab.net>.
Kevin Pilch-Bisson <ke...@pilch-bisson.net> writes:

> Using ra_local, with svn version 83, db-3.3.11, APR and HTTPD from
> this morning, I produced the following (greek-repo contains a
> greek-tree)

Ah!  OK, now we understand! 

Mike and I were simply running 'svn up', both locally and over the
network, and hand-deleted files & dirs were reappearing normally.

But you're running 'svn up <missing object>', and we get the same
errors too now.  Sorry for the misunderstanding.

Can you post this as an issue?

We'll take a look at your diagnosis/patches shortly.  Thanks for
finding/fixing  this.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org