All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] sanity: Use random filename for maximum path length test
@ 2013-11-25 15:20 Mike Crowe
  2013-11-25 15:20 ` [PATCH 2/2] sanity: Don't hard code value of ENAMETOOLONG Mike Crowe
  2013-11-25 15:48 ` [PATCH 1/2] sanity: Use random filename for maximum path length test Richard Purdie
  0 siblings, 2 replies; 3+ messages in thread
From: Mike Crowe @ 2013-11-25 15:20 UTC (permalink / raw)
  To: openembedded-core; +Cc: Mike Crowe

check_create_long_filename used a fixed filename for its test files. This
meant that os.remove(testfile) could fail with ENOENT if two instances were
running at the same time against the same sstate directory. Using a
randomly generated filename stops this from happening.

(Although it might seem unlikely, this race did appear to occur multiple
times with Jenkins - presumably because the matrix jobs were all kicked off
at the same time.)

Signed-off-by: Mike Crowe <mac@mcrowe.com>
---
 meta/classes/sanity.bbclass |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 6807a23..0d40792 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -175,7 +175,8 @@ def check_conf_exists(fn, data):
     return False
 
 def check_create_long_filename(filepath, pathname):
-    testfile = os.path.join(filepath, ''.join([`num`[-1] for num in xrange(1,200)]))
+    import string, random
+    testfile = os.path.join(filepath, ''.join(random.choice(string.ascii_letters) for x in range(200)))
     try:
         if not os.path.exists(filepath):
             bb.utils.mkdirhier(filepath)
-- 
1.7.10.4



^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2013-11-25 15:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-25 15:20 [PATCH 1/2] sanity: Use random filename for maximum path length test Mike Crowe
2013-11-25 15:20 ` [PATCH 2/2] sanity: Don't hard code value of ENAMETOOLONG Mike Crowe
2013-11-25 15:48 ` [PATCH 1/2] sanity: Use random filename for maximum path length test Richard Purdie

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.