* xfsrestore will create orphanage directory when use -t
@ 2012-02-14 17:21 Tommy Wu
2012-02-17 20:50 ` Bill Kendall
2012-02-22 18:55 ` [PATCH] xfsdump: dirs being created in list-only restore Bill Kendall
0 siblings, 2 replies; 7+ messages in thread
From: Tommy Wu @ 2012-02-14 17:21 UTC (permalink / raw)
To: xfs
from the xfsdump man page:
xfsrestore also generates a directory named orphanage in the dest
directory. xfsrestore removes this directory after completing a simple
restore. However, if orphanage is not empty, it is not removed. This
can happen if files present on the dump media are not referenced by
any of the restored directories. The orphanage has an entry for each
such file. The entry name is the file's original inode number, a ".",
and the file's generation count modulo 4096 (only the lower 12 bits of
the generation count are used).
and the -t option from xfsdump man page:
Displays the contents of the dump, but does not create or modify any
files or directories. It may be desirable to set the verbosity level
to silent when using this option.
But when we use -t option with xfsrestore, it still create orphanage
directory in current directory (because no dest directory assign).
and if it's not empty, it is not removed.
This is a bug or it's a feature?
--
Tommy Wu
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: xfsrestore will create orphanage directory when use -t
2012-02-14 17:21 xfsrestore will create orphanage directory when use -t Tommy Wu
@ 2012-02-17 20:50 ` Bill Kendall
2012-02-18 0:22 ` Tommy Wu
2012-02-22 18:55 ` [PATCH] xfsdump: dirs being created in list-only restore Bill Kendall
1 sibling, 1 reply; 7+ messages in thread
From: Bill Kendall @ 2012-02-17 20:50 UTC (permalink / raw)
To: Tommy Wu; +Cc: xfs
On 02/14/2012 11:21 AM, Tommy Wu wrote:
> from the xfsdump man page:
> xfsrestore also generates a directory named orphanage in the dest
> directory. xfsrestore removes this directory after completing a simple
> restore. However, if orphanage is not empty, it is not removed. This
> can happen if files present on the dump media are not referenced by
> any of the restored directories. The orphanage has an entry for each
> such file. The entry name is the file's original inode number, a ".",
> and the file's generation count modulo 4096 (only the lower 12 bits of
> the generation count are used).
>
> and the -t option from xfsdump man page:
> Displays the contents of the dump, but does not create or modify any
> files or directories. It may be desirable to set the verbosity level
> to silent when using this option.
>
> But when we use -t option with xfsrestore, it still create orphanage
> directory in current directory (because no dest directory assign).
> and if it's not empty, it is not removed.
>
> This is a bug or it's a feature?
I can see code where this would happen, except that it would appear
to require both -r and -t to be used, and xfsrestore doesn't allow
that.
If you send the command line you used I can take another look.
Bill
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: xfsrestore will create orphanage directory when use -t
2012-02-17 20:50 ` Bill Kendall
@ 2012-02-18 0:22 ` Tommy Wu
2012-02-18 0:34 ` Tommy Wu
2012-02-22 18:31 ` Bill Kendall
0 siblings, 2 replies; 7+ messages in thread
From: Tommy Wu @ 2012-02-18 0:22 UTC (permalink / raw)
To: Bill Kendall; +Cc: xfs
2012/2/18 Bill Kendall <wkendall@sgi.com>:
> On 02/14/2012 11:21 AM, Tommy Wu wrote:
>>
>> from the xfsdump man page:
>> xfsrestore also generates a directory named orphanage in the dest
>> directory. xfsrestore removes this directory after completing a simple
>> restore. However, if orphanage is not empty, it is not removed. This
>> can happen if files present on the dump media are not referenced by
>> any of the restored directories. The orphanage has an entry for each
>> such file. The entry name is the file's original inode number, a ".",
>> and the file's generation count modulo 4096 (only the lower 12 bits of
>> the generation count are used).
>>
>> and the -t option from xfsdump man page:
>> Displays the contents of the dump, but does not create or modify any
>> files or directories. It may be desirable to set the verbosity level
>> to silent when using this option.
>>
>> But when we use -t option with xfsrestore, it still create orphanage
>> directory in current directory (because no dest directory assign).
>> and if it's not empty, it is not removed.
>>
>> This is a bug or it's a feature?
>
>
> I can see code where this would happen, except that it would appear
> to require both -r and -t to be used, and xfsrestore doesn't allow
> that.
>
> If you send the command line you used I can take another look.
>
> Bill
here is the command I used for -t:
cat var.xfsdump.gz | gzip -dqv | xfsrestore -v silent -p 300 -J -t - |
grep "^xfsrestore:"
I also test it with only -t option, it also create orphanage folder
for such dump file (not all dump file has this issue)
cat var.xfsdump.gz | gzip -dqv | xfsrestore -t - | grep "^xfsrestore:"
--
Tommy Wu
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: xfsrestore will create orphanage directory when use -t
2012-02-18 0:22 ` Tommy Wu
@ 2012-02-18 0:34 ` Tommy Wu
2012-02-22 18:31 ` Bill Kendall
1 sibling, 0 replies; 7+ messages in thread
From: Tommy Wu @ 2012-02-18 0:34 UTC (permalink / raw)
To: Bill Kendall; +Cc: xfs
2012/2/18 Tommy Wu <wu.tommy@gmail.com>:
> 2012/2/18 Bill Kendall <wkendall@sgi.com>:
>> On 02/14/2012 11:21 AM, Tommy Wu wrote:
>>>
>>> from the xfsdump man page:
>>> xfsrestore also generates a directory named orphanage in the dest
>>> directory. xfsrestore removes this directory after completing a simple
>>> restore. However, if orphanage is not empty, it is not removed. This
>>> can happen if files present on the dump media are not referenced by
>>> any of the restored directories. The orphanage has an entry for each
>>> such file. The entry name is the file's original inode number, a ".",
>>> and the file's generation count modulo 4096 (only the lower 12 bits of
>>> the generation count are used).
>>>
>>> and the -t option from xfsdump man page:
>>> Displays the contents of the dump, but does not create or modify any
>>> files or directories. It may be desirable to set the verbosity level
>>> to silent when using this option.
>>>
>>> But when we use -t option with xfsrestore, it still create orphanage
>>> directory in current directory (because no dest directory assign).
>>> and if it's not empty, it is not removed.
>>>
>>> This is a bug or it's a feature?
>>
>>
>> I can see code where this would happen, except that it would appear
>> to require both -r and -t to be used, and xfsrestore doesn't allow
>> that.
>>
>> If you send the command line you used I can take another look.
>>
>> Bill
>
> here is the command I used for -t:
> cat var.xfsdump.gz | gzip -dqv | xfsrestore -v silent -p 300 -J -t - |
> grep "^xfsrestore:"
>
> I also test it with only -t option, it also create orphanage folder
> for such dump file (not all dump file has this issue)
> cat var.xfsdump.gz | gzip -dqv | xfsrestore -t - | grep "^xfsrestore:"
>
>
> --
>
> Tommy Wu
I use xfsdump 3.0.6 plus following 2 patch:
[PATCH] xfsdump: allow system() to obtain exit status
[PATCH] xfsdump: handle files with no extent headers
--
Tommy Wu
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: xfsrestore will create orphanage directory when use -t
2012-02-18 0:22 ` Tommy Wu
2012-02-18 0:34 ` Tommy Wu
@ 2012-02-22 18:31 ` Bill Kendall
2012-02-23 1:16 ` Tommy Wu
1 sibling, 1 reply; 7+ messages in thread
From: Bill Kendall @ 2012-02-22 18:31 UTC (permalink / raw)
To: Tommy Wu; +Cc: xfs
On 02/17/2012 06:22 PM, Tommy Wu wrote:
> 2012/2/18 Bill Kendall<wkendall@sgi.com>:
>> On 02/14/2012 11:21 AM, Tommy Wu wrote:
>>>
>>> from the xfsdump man page:
>>> xfsrestore also generates a directory named orphanage in the dest
>>> directory. xfsrestore removes this directory after completing a simple
>>> restore. However, if orphanage is not empty, it is not removed. This
>>> can happen if files present on the dump media are not referenced by
>>> any of the restored directories. The orphanage has an entry for each
>>> such file. The entry name is the file's original inode number, a ".",
>>> and the file's generation count modulo 4096 (only the lower 12 bits of
>>> the generation count are used).
>>>
>>> and the -t option from xfsdump man page:
>>> Displays the contents of the dump, but does not create or modify any
>>> files or directories. It may be desirable to set the verbosity level
>>> to silent when using this option.
>>>
>>> But when we use -t option with xfsrestore, it still create orphanage
>>> directory in current directory (because no dest directory assign).
>>> and if it's not empty, it is not removed.
>>>
>>> This is a bug or it's a feature?
>>
>>
>> I can see code where this would happen, except that it would appear
>> to require both -r and -t to be used, and xfsrestore doesn't allow
>> that.
>>
>> If you send the command line you used I can take another look.
>>
>> Bill
>
> here is the command I used for -t:
> cat var.xfsdump.gz | gzip -dqv | xfsrestore -v silent -p 300 -J -t - |
> grep "^xfsrestore:"
>
> I also test it with only -t option, it also create orphanage folder
> for such dump file (not all dump file has this issue)
> cat var.xfsdump.gz | gzip -dqv | xfsrestore -t - | grep "^xfsrestore:"
I found an issue which is likely the same as what you're seeing. I'll
post a patch shortly, please let me know whether or not it fixes the
problem.
Thanks,
Bill
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: xfsrestore will create orphanage directory when use -t
2012-02-22 18:31 ` Bill Kendall
@ 2012-02-23 1:16 ` Tommy Wu
0 siblings, 0 replies; 7+ messages in thread
From: Tommy Wu @ 2012-02-23 1:16 UTC (permalink / raw)
To: Bill Kendall; +Cc: xfs
2012/2/23 Bill Kendall <wkendall@sgi.com>:
> On 02/17/2012 06:22 PM, Tommy Wu wrote:
>>
>> 2012/2/18 Bill Kendall<wkendall@sgi.com>:
>>>
>>> On 02/14/2012 11:21 AM, Tommy Wu wrote:
>>>>
>>>>
>>>> from the xfsdump man page:
>>>> xfsrestore also generates a directory named orphanage in the dest
>>>> directory. xfsrestore removes this directory after completing a simple
>>>> restore. However, if orphanage is not empty, it is not removed. This
>>>> can happen if files present on the dump media are not referenced by
>>>> any of the restored directories. The orphanage has an entry for each
>>>> such file. The entry name is the file's original inode number, a ".",
>>>> and the file's generation count modulo 4096 (only the lower 12 bits of
>>>> the generation count are used).
>>>>
>>>> and the -t option from xfsdump man page:
>>>> Displays the contents of the dump, but does not create or modify any
>>>> files or directories. It may be desirable to set the verbosity level
>>>> to silent when using this option.
>>>>
>>>> But when we use -t option with xfsrestore, it still create orphanage
>>>> directory in current directory (because no dest directory assign).
>>>> and if it's not empty, it is not removed.
>>>>
>>>> This is a bug or it's a feature?
>>>
>>>
>>>
>>> I can see code where this would happen, except that it would appear
>>> to require both -r and -t to be used, and xfsrestore doesn't allow
>>> that.
>>>
>>> If you send the command line you used I can take another look.
>>>
>>> Bill
>>
>>
>> here is the command I used for -t:
>> cat var.xfsdump.gz | gzip -dqv | xfsrestore -v silent -p 300 -J -t - |
>> grep "^xfsrestore:"
>>
>> I also test it with only -t option, it also create orphanage folder
>> for such dump file (not all dump file has this issue)
>> cat var.xfsdump.gz | gzip -dqv | xfsrestore -t - | grep "^xfsrestore:"
>
>
> I found an issue which is likely the same as what you're seeing. I'll
> post a patch shortly, please let me know whether or not it fixes the
> problem.
>
> Thanks,
> Bill
yes, after apply the patch, no such directory generated during xfsdump -t.
thanks.
--
Tommy Wu
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] xfsdump: dirs being created in list-only restore
2012-02-14 17:21 xfsrestore will create orphanage directory when use -t Tommy Wu
2012-02-17 20:50 ` Bill Kendall
@ 2012-02-22 18:55 ` Bill Kendall
1 sibling, 0 replies; 7+ messages in thread
From: Bill Kendall @ 2012-02-22 18:55 UTC (permalink / raw)
To: xfs
When xfsrestore is run with the -t option, it lists the files contained
in the dump but does not restore anything. This patch fixes code that
creates an orphaned file's parent directories without checking to see if
this is a list-only (table-of-contents) restore.
Signed-off-by: Bill Kendall <wkendall@sgi.com>
---
restore/tree.c | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/restore/tree.c b/restore/tree.c
index 05e0628..a61fd16 100644
--- a/restore/tree.c
+++ b/restore/tree.c
@@ -1867,12 +1867,16 @@ tree_cb_links( xfs_ino_t ino,
return RV_NOTOK;
}
} else {
- char *dir;
- char tmp[PATH_MAX];
- strcpy(tmp, path);
- dir = dirname(tmp);
- mkdir_r(dir);
+ if ( ! tranp->t_toconlypr ) {
+ char *dir;
+ char tmp[PATH_MAX];
+
+ strcpy(tmp, path);
+ dir = dirname(tmp);
+ mkdir_r(dir);
+ }
+
mlog (MLOG_VERBOSE | MLOG_NOTE | MLOG_TREE, _(
"ino %llu salvaging file,"
" placing in %s\n"), ino, path1);
--
1.7.0.4
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-02-23 1:16 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-14 17:21 xfsrestore will create orphanage directory when use -t Tommy Wu
2012-02-17 20:50 ` Bill Kendall
2012-02-18 0:22 ` Tommy Wu
2012-02-18 0:34 ` Tommy Wu
2012-02-22 18:31 ` Bill Kendall
2012-02-23 1:16 ` Tommy Wu
2012-02-22 18:55 ` [PATCH] xfsdump: dirs being created in list-only restore Bill Kendall
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox