Re: Exclusions not working

2000-11-04 Thread John Goerzen

Alexandre Oliva <[EMAIL PROTECTED]> writes:

> On Nov  4, 2000, John Goerzen <[EMAIL PROTECTED]> wrote:
> 
> > Apparently, there is a bug in glibc that is triggered by the pattern
> > patching code in tar.  They gave me a tar patch that works around it,
> > and this solved my problem!
> 
> You may want to post the patch here, for the record :-)

OK, I've forwarded along the message from the GNU tar people...

-- John

-- 
John Goerzen <[EMAIL PROTECTED]>   www.complete.org
Sr. Software Developer, Progeny Linux Systems, Inc.www.progenylinux.com
#include  <[EMAIL PROTECTED]>



Re: Exclusions not working (FIX)

2000-11-04 Thread John Goerzen

Alexandre Oliva requested that I post this message to amanda-users.
This is regarding the tar problem that I wrote here about.
Here is the message I got from the GNU tar folks, along with a patch.
Note that he couldn't duplicate it on Solaris (which doesn't use GNU
libc) but that it occured for me on two glibc platforms.

-- John

- Forwarded message from Paul Eggert <[EMAIL PROTECTED]> -

X-Addr-Extension: saved
Delivered-To: [EMAIL PROTECTED]
Resent-To: [EMAIL PROTECTED]
Resent-From: John Goerzen <[EMAIL PROTECTED]>
Resent-Date: 04 Nov 2000 11:10:44 -0500
X-Addr-Extension: 
Delivered-To: [EMAIL PROTECTED]
Date: Fri, 3 Nov 2000 09:39:38 -0800 (PST)
From: Paul Eggert <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
In-reply-to: <[EMAIL PROTECTED]>
    ([EMAIL PROTECTED])
Subject: Re: Exclusions not working
Resent-Message-Id: <[EMAIL PROTECTED]>

I can't reproduce the problem on Solaris with GNU tar 1.13.18 using
the following scenario.  Is this scenario the right one?

   $ mkdir -p spool/postfix/private
   $ touch spool/postfix/private/file
   $ echo './spool/postfix/private/*' >x
   $ gtar -cf /tmp/tar --exclude-from=x .
   $ gtar -tvf /tmp/tar
   drwxrwxr-x eggert/eggert 0 2000-11-03 09:29:33 ./
   drwxrwxr-x eggert/eggert 0 2000-11-03 09:27:41 ./spool/
   drwxrwxr-x eggert/eggert 0 2000-11-03 09:27:41 ./spool/postfix/
   drwxrwxr-x eggert/eggert 0 2000-11-03 09:27:49 ./spool/postfix/private/
   -rw-rw-r-- eggert/eggert26 2000-11-03 09:28:01 ./x

Possibly that is a bug in your GNU C library.  Please try using GNU
tar 1.13.18 <ftp://alpha.gnu.org/gnu/tar/> with the following patch;
it works around the glibc bug.  If that doesn't work, please send a
standalone test case.

2000-11-02  Paul Eggert  <[EMAIL PROTECTED]>

* lib/fnmatch.c: Do not comment out all the code if we are
using the GNU C library, because in some cases we are
replacing buggy code in the GNU C library itself.

2000-10-30  Paul Eggert  <[EMAIL PROTECTED]>

* lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.

===
RCS file: lib/fnmatch.c,v
retrieving revision 1.2
retrieving revision 1.4
diff -pu -r1.2 -r1.4
--- lib/fnmatch.c   2000/10/24 06:18:37 1.2
+++ lib/fnmatch.c   2000/11/03 00:23:21 1.4
@@ -27,22 +27,10 @@
 #include 
 #include 
 
-
-/* Comment out all this code if we are using the GNU C Library, and are not
-   actually compiling the library itself.  This code is part of the GNU C
-   Library, but also included in many other GNU distributions.  Compiling
-   and linking in this code is a waste when using the GNU C library
-   (especially if it is a shared library).  Rather than having every GNU
-   program understand `configure --with-gnu-libc' and omit the object files,
-   it is simpler to just do this in the source for each such file.  */
-
-#if defined _LIBC || !defined __GNU_LIBRARY__
-
-
 # if defined STDC_HEADERS || !defined isascii
 #  define IN_CTYPE_DOMAIN(c) 1
 # else
-#  define IN_CTYPE_DOMAIN(c) isascii(c)
+#  define IN_CTYPE_DOMAIN(c) isascii (c)
 # endif
 
 # define ISUPPER(c) (IN_CTYPE_DOMAIN (c) && isupper (c))
@@ -61,7 +49,9 @@ fnmatch (const char *pattern, const char
   register char c;
A
 
 /* Note that this evaluates C many times.  */
-# define FOLD(c) ((flags & FNM_CASEFOLD) && ISUPPER (c) ? tolower (c) : (c))
+# define FOLD(c) ((flags & FNM_CASEFOLD) && ISUPPER ((unsigned char) (c)) \
+  ? tolower ((unsigned char) (c)) \
+  : (c))
 
   while ((c = *p++) != '\0')
 {
@@ -238,5 +228,3 @@ fnmatch (const char *pattern, const char
 
 # undef FOLD
 }
-
-#endif /* _LIBC or not __GNU_LIBRARY__.  */



- End forwarded message -

-- 
A
John Goerzen <[EMAIL PROTECTED]>   www.complete.org
Sr. Software Developer, Progeny Linux Systems, Inc.www.progenylinux.com
#include  <[EMAIL PROTECTED]>



Re: Exclusions not working

2000-11-04 Thread Bernhard R. Erdmann

On Sat, Nov 04, 2000 at 11:16:28AM -0500, John Goerzen wrote:
[...]
> Apparently, there is a bug in glibc that is triggered by the pattern
> patching code in tar.  They gave me a tar patch that works around it,
> and this solved my problem!
[...]

Really interesting: Amanda using tar shows up a bug in glibc...



Re: Exclusions not working

2000-11-04 Thread Alexandre Oliva

On Nov  4, 2000, John Goerzen <[EMAIL PROTECTED]> wrote:

> Apparently, there is a bug in glibc that is triggered by the pattern
> patching code in tar.  They gave me a tar patch that works around it,
> and this solved my problem!

You may want to post the patch here, for the record :-)

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicampoliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist*Please* write to mailing lists, not to me



Re: Exclusions not working

2000-11-04 Thread John Goerzen

Hi everyone,

Thanks for your responses.  Basically, I should clarify: I knew that
the exclusions file was being read because some rules in it were
working; it's just those with wildcards that were not.  The thought
occured to me that maybe I ought to write to the tar folks about it.

Apparently, there is a bug in glibc that is triggered by the pattern
patching code in tar.  They gave me a tar patch that works around it,
and this solved my problem!

Thanks again to everyone for your helpful suggestions.

-- John

"Bernhard R. Erdmann" <[EMAIL PROTECTED]> writes:

> On Thu, Nov 02, 2000 at 07:09:55PM -0500, John Goerzen wrote:
> > Hi,
> > 
> > In my exclude rules for the /var filesystem backup, I have some lines
> > like this:
> > 
> > ./spool/postfix/private/*
> > ./lib/lists-archives/archives/*
> > 
> > Which, according to the docs, are the right way to do this (there are
> > sockets in those directories which cause gtar warnings.)  However,
> > they are ignored!  Also, lines like:
> 
> Did you install the exclude list as defined in the appropriate
> dumptype on the client? Is the file read by Amanda/tar? (Check the
> access time with "ls -lu".)
> 

-- 
John Goerzen <[EMAIL PROTECTED]>   www.complete.org
Sr. Software Developer, Progeny Linux Systems, Inc.www.progenylinux.com
#include  <[EMAIL PROTECTED]>



Re: Exclusions not working

2000-11-04 Thread Bernhard R. Erdmann

On Thu, Nov 02, 2000 at 07:09:55PM -0500, John Goerzen wrote:
> Hi,
> 
> In my exclude rules for the /var filesystem backup, I have some lines
> like this:
> 
> ./spool/postfix/private/*
> ./lib/lists-archives/archives/*
> 
> Which, according to the docs, are the right way to do this (there are
> sockets in those directories which cause gtar warnings.)  However,
> they are ignored!  Also, lines like:

Did you install the exclude list as defined in the appropriate
dumptype on the client? Is the file read by Amanda/tar? (Check the
access time with "ls -lu".)



Re: Exclusions not working

2000-11-03 Thread John R. Jackson

>In my exclude rules for the /var filesystem backup, I have some lines
>like this:
>
>./spool/postfix/private/*
>./lib/lists-archives/archives/*
>
>Which, according to the docs, are the right way to do this (there are
>sockets in those directories which cause gtar warnings.)  However,
>they are ignored!  ...

What do you mean by "they are ignored"?  In particular, I'm not sure GNU
tar doesn't go ahead and throw a warning because it sees these entries
before it tests them agains the exclusion list (which seems like a bug
to me).

>Also, lines like:
>
>*/no-backup/*
>
>are ignored -- even though this is basically EXACTLY like an example
>in the book chapter.  ...

I set up a test case and played with it some and can't get it to fail
with the minimal information here.  A couple of suggestions (from
someone who does not use GNU tar):

  * Are you certain you are updating the exclusion list on the client?
Some people get confused and update it on the server.

  * Did you look at /tmp/amanda/sendbackup*debug on the client and
verify it is using the exclusion list/file you think it is?

  * Are you sure Amanda/GNU tar is using the exclusion list?  If you
do an "ls -lu" on the file right after Amanda runs, is it being
referenced?

Actually, that might be a bad test because if it gets backed up,
that will update the access time.

To test the various cases for the book, I wrote a little shell script
that might help:

  ftp://gandalf.cc.purdue.edu/pub/amanda/gtartest-exclude

>I have GNU tar 1.13.17 ...

FYI, I ran my tests today with 1.12+, 1.13.17 and 1.13.18.

>-- John

John R. Jackson, Technical Software Specialist, [EMAIL PROTECTED]



Exclusions not working

2000-11-02 Thread John Goerzen

Hi,

In my exclude rules for the /var filesystem backup, I have some lines
like this:

./spool/postfix/private/*
./lib/lists-archives/archives/*

Which, according to the docs, are the right way to do this (there are
sockets in those directories which cause gtar warnings.)  However,
they are ignored!  Also, lines like:

*/no-backup/*

are ignored -- even though this is basically EXACTLY like an example
in the book chapter.  However:

no-backup

works.  (Although it totally excludes the directory and not just its
contents).  Also, likes like this work:

It seems that everything with asterisks is broken.  Patterns without
wildcards, eg:

./lib

correctly exclude the directory.

I have GNU tar 1.13.17, Amanda 2.4.1p1, running on a set of Debian
GNU/Linux systems.

Thanks!
-- John

-- 
John Goerzen <[EMAIL PROTECTED]>   www.complete.org
Sr. Software Developer, Progeny Linux Systems, Inc.www.progenylinux.com
#include  <[EMAIL PROTECTED]>