jespern / bitbucket

This repository (bitbucket) is private, but has an open issue tracker.

You can view all issues and add comments, as well as creating new issues, but not make other changes.

Lysander's fault.

Status: resolved Responsible: Mads Sülau Jørgensen / madssj Type: bug
Milestone: 1. Above the Law Component: lysander Version: none

Comments and changes

#1

Jesper Noehr / jespern
6 months ago

→ Changed status from new to open.

Think it's OK now, but I dunno.

#2

Jesper Noehr / jespern
4 months ago

→ Changed component from nothing to lysander.

→ Changed responsible from jespern to madssj.

Mads, take a look at this.

#4

Jesper Noehr / jespern
4 months ago

There's a 'fix_permissions' method in lysander which is run after repo creation, but sometimes it flukes out and the repo ends up without the proper permissions, yielding a 'Permission denied' error when people try to push over ssh.

#5

Jesper Noehr / jespern
4 months ago

→ Changed milestone from nothing to 1. Above the Law.

#6

Mads Sülau Jørgensen / madssj
4 months ago

Does the method get run partially or not at all?

#7

Jesper Noehr / jespern
4 months ago

It does get run, but I think sometimes the stuff on disk is getting created a little delayed for the code to pick it up. It only happens sometimes, that's the thing.

#8

Mads Sülau Jørgensen / madssj
4 months ago

Let's add some logging to lysander so we can tell when it goes wrong. My first thought was that had the permission and creating in seperate threads, but you don't. The disk and fs shouldn't be a problem here, unless mercurial does lazy backend writing (let's hope it doesn't).

Also you could insert a time.sleep(0.05) - if that fixes it, it's the disk/fs.

#9

Mads Sülau Jørgensen / madssj
4 months ago

I've just expierenced this on a newly created repo. It seems that the problem is related to the fix_permissions not setting the propper permissions on the directories located in .hg.

$ find -perm 755|wc -l
100
$ find -perm 755 -type d|wc -l
100

I'll see if I can reproduce it on my test machine. Could look like os.walk is beeing used wrongly.

Add comment / attachment

Show/hide preview