hpi-swa / Squot

Squeak Object Tracker - Version control for arbitrary objects, currently with Git storage
Other
58 stars 29 forks source link

GitHub may close the connection on pushes #9

Open j4yk opened 7 years ago

j4yk commented 7 years ago

I did push successfully twice to GitHub with FileSystem-Git today, but for some sets of commits, GitHub simply closes the connection after receiving a part of the pack content. For the same set of commits, both a local test server and Bitbucket accepted the push without issues.

Have to keep an eye on this to find out what is the cause.

j4yk commented 7 years ago

This is my workaround code (Windows only, unixoid versions can be realized with /bin/sh):

SquitRepository
push: branchSpec to: remoteName
    OSProcess command: 'cmd /C start /D "', self location pathString, '" git push ', remoteName, ' ', branchSpec
j4yk commented 7 years ago

Pushing single commits that only touch a single class does seem to work.

j4yk commented 7 years ago

In my image under Windows, retrying to push a set of commits that already failed once will most probably fail again. However, we did observe in another image under Mac OS X that a retried push can succeed.

scento commented 7 years ago

I got the same issue and never had the ability to push anything without external applications on Gentoo.

j4yk commented 6 years ago

I have recently got a new machine which is quite a lot faster than my notebook. The ConnectionClosed error did not happen once with it, so far. So the problem seems to be somehow linked with the performance of the client machine. Macbooks are rather above-average machines as well, which would explain that the problem did not occur as often on OS X.

Does GitHub require from us to use C-efficient Git implementations after all?

fniephaus commented 6 years ago

Good point, is there any way to test this? What happens if you slow down your image artificially? But why not open a support ticket with the GitHub team and check with them? I wouldn't be surprised if they could identify the problem in their logs or something...

j4yk commented 6 years ago

Not sure, I think you would have to inject the slowdown into the WebClient or Socket code. I figured the GitHub guys have better things to do than giving support for an unfinished Git implementation that does not even create properly shrinked (although valid) pack files for the upload. ;-) But yeah, it would not hurt to ask either.

j4yk commented 4 years ago

I have not seen this issue for a few months now. There were some changes in Squeak's WebClient, so maybe there was a bug in it that is fixed now.

@codeZeilen @fniephaus Do you still hear about this issue from the students?

fniephaus commented 4 years ago

I don't really now to be honest, works fine on my machine. @codeZeilen should know more ...

j4yk commented 4 years ago

I have not seen this at all in the meantime. Closing until someone says it is still broken.

LinqLover commented 2 years ago

Sorry to report that the issue still exists for me. I observe it especially when committing large chunks (e.g., a Form encoded as base64 contents in a method). Luckily, pushing via the external git client works.