Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PEBAK / pacman -Syu tale of woe on XP #415

Closed
PhilipOakley opened this issue Sep 20, 2015 · 17 comments
Closed

PEBAK / pacman -Syu tale of woe on XP #415

PhilipOakley opened this issue Sep 20, 2015 · 17 comments
Labels

Comments

@PhilipOakley
Copy link

This is just to log my tale of woe in case its more than a user PEBAK failure. I'll close it after a full day (i.e. Tuesday morning 22nd-Sept).

tldr; My XP system borked (corrupted my mail reader OE6 and other stuff) during a SDK update using pacman -Syu. I was tired, it was late. I should have waited. I'm now rebuilding the netbook. Don't know if it had anything to do with the SDK update :-(

I was trying to update my 2.5.1 SDK install on my XPsp3 netbook using the style of #364 (comment) (i.e. call pacman -Syu in your SDK to update all packages to the current version).

Sourceforge was on a go slow, and I repeated the command a couple of times to eventually get the whole package. During that time my OE6 was open (one uses what one has..) and downloaded a few more Git List emails. However when I tried opening the emails, the OE viewer showed the mails as being blank. Worse still, all the emails in the databases showed as blank. Then Chrome started crashing (error dialog with 'close' as the only option)

Other issues may also have happend during the attempted update (recollection is hazy).

I'm now rebuilding the pc after a lot of fun collecting all the relevant content from the drives and doing a clean re-install (built-in recovery) (4 days so far). At least the old cruft will be gone...

If others have had a very similar issue then maybe there might be something to look at. Otherwise it's just 'experience

Aside: Given that sometimes the SDK updates involve all the base components, is there a generic "right way" of updating the SDK that covers all contingencies? E.g. can one always just run the https://github.com/git-for-windows/build-extra/releases/latest on top of an old install and expect sucess?

@PhilipOakley
Copy link
Author

Follow up to the aside. I have created a Wiki page on Updating Your SDK https://github.com/git-for-windows/git/wiki/Updating-your-SDK, which is based directly on dscho's text.

The one issue there is how to know if the update requires the forced .dll updates?

@dscho
Copy link
Member

dscho commented Sep 20, 2015

I cannot really see how the SDK update can affect Outlook or Chrome...

@dscho dscho added the unclear label Sep 20, 2015
@PhilipOakley
Copy link
Author

Hi dscho,

If I had to guess (now) at a plausible option as to how an SDK update could be an issue, it would be the little nuance hidden in the Updating Your SDK where you said to beware if MSYS2 was being updated.

It's plausible that it was being updated, but it's still, in a sense, my fault for being unprepared.

I've just about got the m/c back, so it's a learning exercise...

Is there a way, within the pacman command method, of determining if a particular package requires update before the update is initiated?

@dscho
Copy link
Member

dscho commented Sep 20, 2015

The warning was more about unexpected MSys2 errors when msys2-runtime or bash are updated (heap errors)... Pacman updates should not be able to affect anything outside MSys2... There is simply no code in Pacman nor msys2-runtime to cause that ('cept for bugs, of course).

@PhilipOakley
Copy link
Author

Aside: another plausible option [for the XP/OE6 crash] is that I'd reached some limit on number of emails or size of one of the email directories. Etc. These things happen. I just though it worth noting the association [correlation without causation].

In the meanwhile I've been tweaking the wiki page I created - It wasn't immediately obvious that 'Package management' had much to do with updating the broader SDK (a bit of context blindness;-)

Still to resolve how to pre-detect the possibility of an unexpected MSys2 error. Maybe the pacman -T option is needed but the man page didn't provide enough illumination to see.

@dscho
Copy link
Member

dscho commented Sep 20, 2015

I will work on scripts to automate the individual steps necessary to deploy a new Git for Windows this week. One part will make updating the SDK safer.

@PhilipOakley
Copy link
Author

Just a thought... Maybe don't automate the SDK update too soon, rather make sure that the steps are well described so that myself and others can follow along.

At times we (others) are at the wrong end of the USAUAOIT unskilled and unaware of it scales (i.e. $"Burden of Expertise" p1131 vs $"1st/2nd Quartiles" fig2).

There's a lot more I need to learn in some of the areas. (Isn't 'good' documentation tedious - been there, failed often ;-)

@dscho
Copy link
Member

dscho commented Sep 21, 2015

Well, I do not really think there is a value in every contributor having to repeat the exact same steps manually as the next one. I really would like to automate things via scripts. And of course those scripts serve as documentation as well (in particular with the comments I try to provide, e.g. in SDK's setup script.

@PhilipOakley
Copy link
Author

Sorry if I was unclear. I was more talking about finding a way of informing the contributors (so they knew where to read, etc.) rather than forcing fine grained error prone manual steps on them.

I'll see if I can improve the wiki page I started (which was based on your stirling work ;-)

@nalla
Copy link

nalla commented Sep 21, 2015

OT: I added the call to update-core to https://github.com/git-for-windows/git/wiki/Updating-your-SDK to enhance the update experience. The call to update core checks if any packages that requires a restart of the Msys2 console have to be updated.

@PhilipOakley
Copy link
Author

OT: I added the call to update-core to https://github.com/git-for-windows/git/wiki/Updating-your-SDK to enhance the update experience. >The call to update core checks if any packages that requires a restart of the Msys2 console have to be updated.
That’s a useful extra, though we probably ought to also say HOW it is to be restarted, not just “you MUST restart MSys2”.
I think that restart is the side comment to close the window rather than exit that listed in the Caution section.
I was also going to add a link to the SDK's setup script https://github.com/git-for-windows/build-extra/blob/master/sdk-installer/setup-git-sdk.bat that dscho had given.

@dscho
Copy link
Member

dscho commented Sep 21, 2015

re: update-core 👍

@PhilipOakley
Copy link
Author

I've added a link for the setup-git-sdk and the core-update into the 'updating your SDK' page.

I see @nalla has also improved the page, though I wonder about if we should retain the original comments about what windows will be MSys2 and how to close them? I'm not sure how the 'don't use exit' applies, hence my asking.

@dscho
Copy link
Member

dscho commented Sep 21, 2015

I'm not sure how the 'don't use exit' applies

I'm pretty certain that this rule applies because usually an exit after msys2-runtime was updated fails miserably, with an endless loop of error messages purporting that there is something wrong with some kind of heap.

@PhilipOakley
Copy link
Author

It's time to close the primary 'issue' of the "tale of woe on XP during SDK update" (as promised) as no one else has reported having any OS/programme corruption during an SDK update, but at least it will be on file if needed.

I'll re-add the tweak to the wiki page about how to close the MSys2 windows, and probably note it to upstream for the extra clarification.

Thanks for the support.

@PhilipOakley
Copy link
Author

Just to say that I raised a PR Alexpux/MSYS2-pacman#18 with Alexpux for the 'Prompt forst' and 'How to Close' issue above #415 (comment) whicjh has now been merged upstream.

@dscho How should the G4W pacman be updated? Will you pick it up or would you like a matching PR here?

@dscho
Copy link
Member

dscho commented Sep 28, 2015

@dscho How should the G4W pacman be updated? Will you pick it up or would you like a matching PR here?

It will be updated automatically because Git for Windows uses MSys2's repository for almost all packages. There are only two packages we override: msys2-runtime and mingw-w64-git. Both are slated to be reconciled eventually, pending #284.

So: no need to do anything. The next pacman -Syu will pick up the newest package versions.

jeffhostetler pushed a commit to jeffhostetler/git that referenced this issue Sep 30, 2021
…e unconditionally

No matter what I try, I cannot get the untracked cache to fail on Windows. Here are the things that are done in this pull request:

1. Scalar enables the untracked cache unconditionally via `core.untrackedCache = true`. This was previously set to `false` on Windows.
2. Set `GIT_FORCE_UNTRACKED_CACHE=1` for the Scalar functional tests.
3. Update the `core.untrackedCache` config variable to be as strong as the `GIT_FORCE_UNTRACKED_CACHE` environment variable.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants