delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2012/03/27/11:19:11

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-0.8 required=5.0 tests=AWL,BAYES_00,SPF_NEUTRAL
X-Spam-Check-By: sourceware.org
Message-ID: <4F71DA4F.1060105@cs.utoronto.ca>
Date: Tue, 27 Mar 2012 11:18:39 -0400
From: Ryan Johnson <ryan DOT johnson AT cs DOT utoronto DOT ca>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:11.0) Gecko/20120312 Thunderbird/11.0
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: [ANNOUNCEMENT] Updated: rebase-4.1.0-1
References: <announce DOT 20120327014025 DOT GA3344 AT tishler DOT net> <4F712CFC DOT 9050603 AT cs DOT utoronto DOT ca> <20120327083621 DOT GA30721 AT calimero DOT vinschen DOT de>
In-Reply-To: <20120327083621.GA30721@calimero.vinschen.de>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On 27/03/2012 4:36 AM, Corinna Vinschen wrote:
> On Mar 26 22:59, Ryan Johnson wrote:
>> On 26/03/2012 9:40 PM, Jason Tishler wrote:
>>> New News:
>>> === ====
>>> I have updated the version of rebase to 4.1.0-1.  The tarballs should be
>>> available on a Cygwin mirror near you shortly.
>>>
>>> The following are the changes since the previous release:
>>>
>>>      * Add rebase/rebaseall touch file (i.e., -t option) support.
>>>
>>>      * Add rebaseall setup (i.e., -p option) support.
>>>
>>>      * Add .oct to the default rebaseall suffix list.
>> I've been meaning to ask... but maybe the above-mentioned -p flag
>> obsoletes it now: What's the most efficient way to rebase after
>> running setup? We've had the rebase db for a while now, so running
>> rebaseall seems like overkill. Only the newly downloaded dlls need
> Now that the new rebase is out, I'm going to create an _autorebase
> package which will automatically call rebaseall at the end of a
> successful run of setup, if that run also updated existing DLLs or
> came with new DLLs.
>
> In some cases this might take two minutes or so at the end of a setup
> run, but at least we should see less rebase problems in future.
That will be awesome.

> The most efficient way would be to change rebaseall so that only
> DLLs are given to rebase which are updated or new.  But rebaseall
> would still have to search the files in /etc/setup.  And rebase
> still opens every DLL in the DB and from the command line to see
> if the DB and reality are still in sync, and to decide which DLLs
> have to be rebased and which are not.  So I'm not sure you can
> make it much faster, unless you make the algorithm in rebase itself
> faster.
Honestly, I don't care if it's slow, just so it works. The problem right 
now -- at least in my naive invocations -- is that rebaseall attempts to 
rebase things which are in-use. Perhaps the initial in-sync-ness check 
opens the file in exclusive mode and fails? I know the in-use files were 
still in sync because they were when setup started. Setup didn't 
complain about anything and I didn't start any new processes after it 
completed.

Another idea: right now rebase[all] seems to give up if it encounters an 
in-use file. Can it just skip the file and keep going?

> Needless to say that the ultimately most efficient way would be
> to find a method to avoid rebase problems after fork at all.  The
> last attempt at it looked promising at first, but then again...
> http://social.msdn.microsoft.com/Forums/en-US/windowsgeneraldevelopmentissues/thread/afdf1b68-1f3e-47f5-94cf-51e397afe073
That did look promising... I only run in a console under duress, but 
losing LoadLibrary is a deal-breaker.

Ryan


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019