Good, now I kindly ask you to try not to take up _my_ time for _your_ mistakes by reverting instead of arguing. You refuse every time I ask for a revert and end up doing it anyway but after taking up what little time we have by arguing when there is so much work to do.
On Sun, Jun 25, 2017 at 1:28 PM, Jacques Le Roux < [email protected]> wrote: > Ah wait, I see line still contains "start" so will be executed twice > anyway. OK I'll improve that. > > Jacques > > > > Le 25/06/2017 à 12:18, Jacques Le Roux a écrit : > >> I don't revert without explanations on why I should revert. Sorry, but I >> don't find your explanations clear. >> >> My explanation, tell my what's wrong: >> >> The 2 "if" blocks are executed sequentially for each line containing "a >> start"and ignore other lines. I did not change the previous logic, just >> added a new if. >> >> Gradle exec spawns a new process and waits till it ends (this point is >> important). >> >> If the line contains "a start" the 1st "if" try to terminate it. >> >> If it worked the 2nd "if" does not execute. This is better than before >> because it allows the "'start" process "a chance to clean up after itself" >> (cf unix.stackexchange.com below) >> >> If the "start" process is not terminated then it's killed by the 2nd >> "if", like it was done before. >> >> As I said it cleanly worked with 2 OFBiz instances running in the >> background. >> >> Now tell me what's wrong? >> >> Thanks >> >> Jacques >> >> >> Le 25/06/2017 à 11:22, Taher Alkhateeb a écrit : >> >>> As usual, you refuse to revert because you don't understand the code and >>> I >>> pay the price of spending my time explaining. I hope you will reconsider >>> this time consuming and non-cooperative behavior. >>> >>> The quick version: >>> - copy and paste antipattern >>> - incorrect conditional checking leading to both blocks getting executed >>> or >>> both blocks not executing >>> >>> Your belief that Gradle fails because java does not expect to be killed >>> is >>> amazing! It means you do not understand what this code is doing and what >>> is >>> causing the failure. >>> >>> >>> On Jun 25, 2017 10:42 AM, "Jacques Le Roux" < >>> [email protected]> >>> wrote: >>> >>> What makes you think it's wrong? I tested it locally using 2 background >>> instances and it cleaned worked. >>> >>> I also tried with one standard instance (not in background). It works, >>> and >>> you get this message >>> >>> :ofbiz FAILED >>> FAILURE: Build failed with an exception. >>> * What went wrong: >>> Execution failed for task ':ofbiz'. >>> >>>> Process 'command '/usr/lib/jvm/java-8-oracle/bin/java'' finished with >>>> >>> non-zero exit value 137 >>> >>> Which I believe is OK because Java does not expect to be killed! >>> >>> Jacques >>> >>> >>> >>> Le 24/06/2017 à 20:04, Taher Alkhateeb a écrit : >>> >>> This commit is wrong and bad on multiple levels. Please revert >>>> >>>> On Sat, Jun 24, 2017 at 10:56 AM, <[email protected]> wrote: >>>> >>>> Author: jleroux >>>> >>>>> Date: Sat Jun 24 07:56:45 2017 >>>>> New Revision: 1799736 >>>>> >>>>> URL: http://svn.apache.org/viewvc?rev=1799736&view=rev >>>>> Log: >>>>> No functional change >>>>> >>>>> Improves terminateOfbiz byt using TERM before KILL >>>>> https://fr.wikipedia.org/wiki/Kill_(Unix) >>>>> https://unix.stackexchange.com/questions/8916/when- >>>>> should-i-not-kill-9-a-process >>>>> >>>>> Modified: >>>>> ofbiz/ofbiz-framework/trunk/build.gradle >>>>> >>>>> Modified: ofbiz/ofbiz-framework/trunk/build.gradle >>>>> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/ >>>>> build.gradle?rev=1799736&r1=1799735&r2=1799736&view=diff >>>>> ============================================================ >>>>> ================== >>>>> --- ofbiz/ofbiz-framework/trunk/build.gradle (original) >>>>> +++ ofbiz/ofbiz-framework/trunk/build.gradle Sat Jun 24 07:56:45 2017 >>>>> @@ -332,8 +332,13 @@ task terminateOfbiz(group: ofbizServer, >>>>> standardOutput = processOutput >>>>> } >>>>> processOutput.toString().split(System.lineSeparator()).each >>>>> { line -> >>>>> + // Try to terminate cleanly >>>>> if (line ==~ /.*org\.apache\.ofbiz\.base\.s >>>>> tart\.Start.*/) >>>>> { >>>>> - exec { commandLine 'kill', '-9', >>>>> line.tokenize().first() } >>>>> + exec { commandLine 'kill', '-TERM', >>>>> line.tokenize().first() } >>>>> + } >>>>> + // Only kill if needed >>>>> + if (line ==~ /.*org\.apache\.ofbiz\.base\.s >>>>> tart\.Start.*/) >>>>> { >>>>> + exec { commandLine 'kill', '-KILL', >>>>> line.tokenize().first() } >>>>> } >>>>> } >>>>> } >>>>> >>>>> >>>>> >>>>> >>>>> >> >> >
