* [PATCH 0/1] fetch2/__init__.py: remove broken sysmlink
@ 2014-08-19 9:07 Robert Yang
2014-08-19 9:07 ` [PATCH 1/1] " Robert Yang
0 siblings, 1 reply; 4+ messages in thread
From: Robert Yang @ 2014-08-19 9:07 UTC (permalink / raw)
To: bitbake-devel
The following changes since commit 201af937a0a45dd0203b1a4a00cffa7a24a31c20:
newbb.vim: remove PR (2014-08-18 17:30:25 -0700)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib rbt/dl
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=rbt/dl
Robert Yang (1):
fetch2/__init__.py: remove broken sysmlink
bitbake/lib/bb/fetch2/__init__.py | 5 +++++
1 file changed, 5 insertions(+)
--
1.7.9.5
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 1/1] fetch2/__init__.py: remove broken sysmlink
2014-08-19 9:07 [PATCH 0/1] fetch2/__init__.py: remove broken sysmlink Robert Yang
@ 2014-08-19 9:07 ` Robert Yang
2014-08-19 10:15 ` Martin Jansa
0 siblings, 1 reply; 4+ messages in thread
From: Robert Yang @ 2014-08-19 9:07 UTC (permalink / raw)
To: bitbake-devel
Fixed:
(Simulate mirror the tarball from PREMIRRORS)
$ ln -sf /path/to/local/PREMIRROR/bzip2 bzip2-1.0.6.tar.gz
(Simulate the PREMIRRORS are gone)
$ rm -f /path/to/local/PREMIRROR/bzip2-1.0.6.tar.gz
$ bitbake bzip2 -ccleansstate && bitbake bzip2 -cfetch
Then the newly get bzip2-1.0.6.tar.gz will be saved to
/path/to/local/PREMIRROR/bzip2-1.0.6.tar.gz rather than then the DL_DIR,
or get error if we don't have the write permission on to the mirror.
This is because wget uses "lstat()" to follow the symlink for FTP (but
fstat() for HTTP, so http doesn't have this issue), and we can't fix
wget (this might be intended by wget) since it is one of
SANITY_REQUIRED_UTILITIES.
Remove the broken sysmlink in DL_DIR will fix the problem.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
bitbake/lib/bb/fetch2/__init__.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py
index df2f2b0..c95f177 100644
--- a/bitbake/lib/bb/fetch2/__init__.py
+++ b/bitbake/lib/bb/fetch2/__init__.py
@@ -1081,6 +1081,11 @@ class FetchData(object):
self.donestamp = basepath + '.done'
self.lockfile = basepath + '.lock'
+ # Remove the broken sysmlink
+ if self.localpath and not os.path.exists(self.localpath) and \
+ os.path.islink(self.localpath):
+ os.unlink(self.localpath)
+
def setup_revisons(self, d):
self.revisions = {}
for name in self.names:
--
1.7.9.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 1/1] fetch2/__init__.py: remove broken sysmlink
2014-08-19 9:07 ` [PATCH 1/1] " Robert Yang
@ 2014-08-19 10:15 ` Martin Jansa
2014-08-19 10:34 ` Robert Yang
0 siblings, 1 reply; 4+ messages in thread
From: Martin Jansa @ 2014-08-19 10:15 UTC (permalink / raw)
To: Robert Yang; +Cc: bitbake-devel
[-- Attachment #1: Type: text/plain, Size: 2367 bytes --]
On Tue, Aug 19, 2014 at 02:07:41AM -0700, Robert Yang wrote:
> Fixed:
> (Simulate mirror the tarball from PREMIRRORS)
> $ ln -sf /path/to/local/PREMIRROR/bzip2 bzip2-1.0.6.tar.gz
> (Simulate the PREMIRRORS are gone)
> $ rm -f /path/to/local/PREMIRROR/bzip2-1.0.6.tar.gz
> $ bitbake bzip2 -ccleansstate && bitbake bzip2 -cfetch
Why does it need to re-fetch it when you haven't don't cleanall?
If it has different checksums, then fetcher should rename it, before
re-downloading it.
Shouldn't fetcher just use bzip2-1.0.6.tar.gz if there is
bzip2-1.0.6.tar.gz.done?
I'm not saying that your change isn't correct, but maybe it uncovers
worse issue with fetcher redownloading unnecessary.
> Then the newly get bzip2-1.0.6.tar.gz will be saved to
> /path/to/local/PREMIRROR/bzip2-1.0.6.tar.gz rather than then the DL_DIR,
> or get error if we don't have the write permission on to the mirror.
> This is because wget uses "lstat()" to follow the symlink for FTP (but
> fstat() for HTTP, so http doesn't have this issue), and we can't fix
> wget (this might be intended by wget) since it is one of
> SANITY_REQUIRED_UTILITIES.
>
> Remove the broken sysmlink in DL_DIR will fix the problem.
type symlink
>
> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
> ---
> bitbake/lib/bb/fetch2/__init__.py | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py
> index df2f2b0..c95f177 100644
> --- a/bitbake/lib/bb/fetch2/__init__.py
> +++ b/bitbake/lib/bb/fetch2/__init__.py
> @@ -1081,6 +1081,11 @@ class FetchData(object):
> self.donestamp = basepath + '.done'
> self.lockfile = basepath + '.lock'
>
> + # Remove the broken sysmlink
typo "symlink"
> + if self.localpath and not os.path.exists(self.localpath) and \
> + os.path.islink(self.localpath):
> + os.unlink(self.localpath)
> +
> def setup_revisons(self, d):
> self.revisions = {}
> for name in self.names:
> --
> 1.7.9.5
>
> --
> _______________________________________________
> bitbake-devel mailing list
> bitbake-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/bitbake-devel
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 188 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 1/1] fetch2/__init__.py: remove broken sysmlink
2014-08-19 10:15 ` Martin Jansa
@ 2014-08-19 10:34 ` Robert Yang
0 siblings, 0 replies; 4+ messages in thread
From: Robert Yang @ 2014-08-19 10:34 UTC (permalink / raw)
To: Martin Jansa; +Cc: bitbake-devel
On 08/19/2014 06:15 PM, Martin Jansa wrote:
> On Tue, Aug 19, 2014 at 02:07:41AM -0700, Robert Yang wrote:
>> Fixed:
>> (Simulate mirror the tarball from PREMIRRORS)
>> $ ln -sf /path/to/local/PREMIRROR/bzip2 bzip2-1.0.6.tar.gz
>> (Simulate the PREMIRRORS are gone)
>> $ rm -f /path/to/local/PREMIRROR/bzip2-1.0.6.tar.gz
>> $ bitbake bzip2 -ccleansstate && bitbake bzip2 -cfetch
>
> Why does it need to re-fetch it when you haven't don't cleanall?
I met this error when the local PREMIRROR is gone, I think that
it needs re-fetch is because the symlink is broken? (os.path.exits()
returns False ?)
>
> If it has different checksums, then fetcher should rename it, before
> re-downloading it.
>
> Shouldn't fetcher just use bzip2-1.0.6.tar.gz if there is
> bzip2-1.0.6.tar.gz.done?
>
> I'm not saying that your change isn't correct, but maybe it uncovers
> worse issue with fetcher redownloading unnecessary.
>
>> Then the newly get bzip2-1.0.6.tar.gz will be saved to
>> /path/to/local/PREMIRROR/bzip2-1.0.6.tar.gz rather than then the DL_DIR,
>> or get error if we don't have the write permission on to the mirror.
>> This is because wget uses "lstat()" to follow the symlink for FTP (but
>> fstat() for HTTP, so http doesn't have this issue), and we can't fix
>> wget (this might be intended by wget) since it is one of
>> SANITY_REQUIRED_UTILITIES.
>>
>> Remove the broken sysmlink in DL_DIR will fix the problem.
>
> type symlink
Thanks, fixed the typos in the repo.
// Robert
>
>>
>> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
>> ---
>> bitbake/lib/bb/fetch2/__init__.py | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py
>> index df2f2b0..c95f177 100644
>> --- a/bitbake/lib/bb/fetch2/__init__.py
>> +++ b/bitbake/lib/bb/fetch2/__init__.py
>> @@ -1081,6 +1081,11 @@ class FetchData(object):
>> self.donestamp = basepath + '.done'
>> self.lockfile = basepath + '.lock'
>>
>> + # Remove the broken sysmlink
>
> typo "symlink"
>
>> + if self.localpath and not os.path.exists(self.localpath) and \
>> + os.path.islink(self.localpath):
>> + os.unlink(self.localpath)
>> +
>> def setup_revisons(self, d):
>> self.revisions = {}
>> for name in self.names:
>> --
>> 1.7.9.5
>>
>> --
>> _______________________________________________
>> bitbake-devel mailing list
>> bitbake-devel@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/bitbake-devel
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-08-19 10:34 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-19 9:07 [PATCH 0/1] fetch2/__init__.py: remove broken sysmlink Robert Yang
2014-08-19 9:07 ` [PATCH 1/1] " Robert Yang
2014-08-19 10:15 ` Martin Jansa
2014-08-19 10:34 ` Robert Yang
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.