Re: [PATCH v5 3/6] git-p4: retry kill/cleanup operations in tests with timeout
- From
Lars Schneider <larsxschneider@gmail.com>
- Date
- Nov 17, 2015, 08:28 UTC
- Message-ID
- <52A9F66D-12C4-4BB5-A2D4-C476A1E12DC5@gmail.com>
- In-Reply-To
- <CAPig+cQkNB3VzbC_R_T=ppkgvmTbOWnK22hFxyMzJH1DZ_iVhQ@mail.gmail.com>
On 16 Nov 2015, at 22:14, Eric Sunshine <sunshine@sunshineco.com> wrote:
Show 22 quoted lines
> On Sun, Nov 15, 2015 at 8:08 AM, <larsxschneider@gmail.com> wrote:
>> From: Lars Schneider <larsxschneider@gmail.com>
>>
>> In rare cases kill/cleanup operations in tests fail. Retry these
>> operations with a timeout to make the test less flaky.
>>
>> Signed-off-by: Lars Schneider <larsxschneider@gmail.com>
>> ---
>> diff --git a/t/lib-git-p4.sh b/t/lib-git-p4.sh
>> @@ -121,22 +125,33 @@ p4_add_user() {
>> EOF
>> }
>>
>> +retry_until_success() {
>> + timeout=$(($(date +%s) + $RETRY_TIMEOUT))
>
> There was some discussion previously[1] about detecting dynamically
> whether 'date +%s' was supported. Was this something that you intended
> to do, or did you decide against it since p4 is not supported on such
> platforms?
>
> Same question also applies to patch 4/6.While implementing it I thought more about it. P4D is only supported on platforms that support the date function. That means these tests will only run on platforms that support the date function. Consequently I wondered if this would justify the slightly more complicated code. However, if you think this change would help the patch to get accepted then I will add it.
Thanks, Lars
Show 14 quoted lines
>
> [1]: http://article.gmane.org/gmane.comp.version-control.git/280978/match=lazy+prerequisite
>
>> + until "$@" 2>/dev/null || test $(date +%s) -gt $timeout
>> + do :
>> + done
>> +}
>> +
>> +retry_until_fail() {
>> + timeout=$(($(date +%s) + $RETRY_TIMEOUT))
>> + until ! "$@" 2>/dev/null || test $(date +%s) -gt $timeout
>> + do :
>> + done
>> +}