mirror of
https://github.com/GAM-team/GAM.git
synced 2026-07-04 21:01:36 +00:00
Fixed control-C bug
This commit is contained in:
@@ -10,6 +10,11 @@ Add the `-s` option to the end of the above commands to suppress creating the `g
|
|||||||
|
|
||||||
See [Downloads](https://github.com/taers232c/GAMADV-XTD3/wiki/Downloads) for Windows or other options, including manual installation
|
See [Downloads](https://github.com/taers232c/GAMADV-XTD3/wiki/Downloads) for Windows or other options, including manual installation
|
||||||
|
|
||||||
|
### 6.76.07
|
||||||
|
|
||||||
|
Fixed bug where control-C was not recognized when GAM had processed all rows in a CSV file
|
||||||
|
and was `Waiting for N running processes to finish before terminating`.
|
||||||
|
|
||||||
### 6.76.06
|
### 6.76.06
|
||||||
|
|
||||||
Fixed bug in `gam <UserTypeEntity> print messages ... positivecountsonly` where message counts with value 0 were deiplayed.
|
Fixed bug in `gam <UserTypeEntity> print messages ... positivecountsonly` where message counts with value 0 were deiplayed.
|
||||||
|
|||||||
@@ -335,7 +335,7 @@ writes the credentials into the file oauth2.txt.
|
|||||||
admin@server:/Users/admin/bin/gamadv-xtd3$ rm -f /Users/admin/GAMConfig/oauth2.txt
|
admin@server:/Users/admin/bin/gamadv-xtd3$ rm -f /Users/admin/GAMConfig/oauth2.txt
|
||||||
admin@server:/Users/admin/bin/gamadv-xtd3$ ./gam version
|
admin@server:/Users/admin/bin/gamadv-xtd3$ ./gam version
|
||||||
WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found
|
WARNING: Config File: /Users/admin/GAMConfig/gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: /Users/admin/GAMConfig/oauth2.txt, Not Found
|
||||||
GAMADV-XTD3 6.76.06 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
GAMADV-XTD3 6.76.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
||||||
Ross Scroggs <ross.scroggs@gmail.com>
|
Ross Scroggs <ross.scroggs@gmail.com>
|
||||||
Python 3.12.3 64-bit final
|
Python 3.12.3 64-bit final
|
||||||
MacOS Sonoma 14.4.1 x86_64
|
MacOS Sonoma 14.4.1 x86_64
|
||||||
@@ -1009,7 +1009,7 @@ writes the credentials into the file oauth2.txt.
|
|||||||
C:\GAMADV-XTD3>del C:\GAMConfig\oauth2.txt
|
C:\GAMADV-XTD3>del C:\GAMConfig\oauth2.txt
|
||||||
C:\GAMADV-XTD3>gam version
|
C:\GAMADV-XTD3>gam version
|
||||||
WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found
|
WARNING: Config File: C:\GAMConfig\gam.cfg, Section: DEFAULT, Item: oauth2_txt, Value: C:\GAMConfig\oauth2.txt, Not Found
|
||||||
GAMADV-XTD3 6.76.06 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
GAMADV-XTD3 6.76.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
||||||
Ross Scroggs <ross.scroggs@gmail.com>
|
Ross Scroggs <ross.scroggs@gmail.com>
|
||||||
Python 3.12.3 64-bit final
|
Python 3.12.3 64-bit final
|
||||||
Windows-10-10.0.17134 AMD64
|
Windows-10-10.0.17134 AMD64
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
Print the current version of Gam with details
|
Print the current version of Gam with details
|
||||||
```
|
```
|
||||||
gam version
|
gam version
|
||||||
GAMADV-XTD3 6.76.06 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
GAMADV-XTD3 6.76.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
||||||
Ross Scroggs <ross.scroggs@gmail.com>
|
Ross Scroggs <ross.scroggs@gmail.com>
|
||||||
Python 3.12.3 64-bit final
|
Python 3.12.3 64-bit final
|
||||||
MacOS Sonoma 14.4.1 x86_64
|
MacOS Sonoma 14.4.1 x86_64
|
||||||
@@ -15,7 +15,7 @@ Time: 2023-06-02T21:10:00-07:00
|
|||||||
Print the current version of Gam with details and time offset information
|
Print the current version of Gam with details and time offset information
|
||||||
```
|
```
|
||||||
gam version timeoffset
|
gam version timeoffset
|
||||||
GAMADV-XTD3 6.76.06 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
GAMADV-XTD3 6.76.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
||||||
Ross Scroggs <ross.scroggs@gmail.com>
|
Ross Scroggs <ross.scroggs@gmail.com>
|
||||||
Python 3.12.3 64-bit final
|
Python 3.12.3 64-bit final
|
||||||
MacOS Sonoma 14.4.1 x86_64
|
MacOS Sonoma 14.4.1 x86_64
|
||||||
@@ -27,7 +27,7 @@ Your system time differs from www.googleapis.com by less than 1 second
|
|||||||
Print the current version of Gam with extended details and SSL information
|
Print the current version of Gam with extended details and SSL information
|
||||||
```
|
```
|
||||||
gam version extended
|
gam version extended
|
||||||
GAMADV-XTD3 6.76.06 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
GAMADV-XTD3 6.76.07 - https://github.com/taers232c/GAMADV-XTD3 - pythonsource
|
||||||
Ross Scroggs <ross.scroggs@gmail.com>
|
Ross Scroggs <ross.scroggs@gmail.com>
|
||||||
Python 3.12.3 64-bit final
|
Python 3.12.3 64-bit final
|
||||||
MacOS Sonoma 14.4.1 x86_64
|
MacOS Sonoma 14.4.1 x86_64
|
||||||
@@ -64,7 +64,7 @@ MacOS High Sierra 10.13.6 x86_64
|
|||||||
Path: /Users/Admin/bin/gamadv-xtd3
|
Path: /Users/Admin/bin/gamadv-xtd3
|
||||||
Version Check:
|
Version Check:
|
||||||
Current: 5.35.08
|
Current: 5.35.08
|
||||||
Latest: 6.76.06
|
Latest: 6.76.07
|
||||||
echo $?
|
echo $?
|
||||||
1
|
1
|
||||||
```
|
```
|
||||||
@@ -72,7 +72,7 @@ echo $?
|
|||||||
Print the current version number without details
|
Print the current version number without details
|
||||||
```
|
```
|
||||||
gam version simple
|
gam version simple
|
||||||
6.76.06
|
6.76.07
|
||||||
```
|
```
|
||||||
In Linux/MacOS you can do:
|
In Linux/MacOS you can do:
|
||||||
```
|
```
|
||||||
@@ -82,7 +82,7 @@ echo $VER
|
|||||||
Print the current version of Gam and address of this Wiki
|
Print the current version of Gam and address of this Wiki
|
||||||
```
|
```
|
||||||
gam help
|
gam help
|
||||||
GAM 6.76.06 - https://github.com/taers232c/GAMADV-XTD3
|
GAM 6.76.07 - https://github.com/taers232c/GAMADV-XTD3
|
||||||
Ross Scroggs <ross.scroggs@gmail.com>
|
Ross Scroggs <ross.scroggs@gmail.com>
|
||||||
Python 3.12.3 64-bit final
|
Python 3.12.3 64-bit final
|
||||||
MacOS Sonoma 14.4.1 x86_64
|
MacOS Sonoma 14.4.1 x86_64
|
||||||
|
|||||||
@@ -2,6 +2,11 @@
|
|||||||
|
|
||||||
Merged GAM-Team version
|
Merged GAM-Team version
|
||||||
|
|
||||||
|
6.76.07
|
||||||
|
|
||||||
|
Fixed bug where control-C was not recognized when GAM had processed all rows in a CSV file
|
||||||
|
and was `Waiting for N running processes to finish before terminating`.
|
||||||
|
|
||||||
6.76.06
|
6.76.06
|
||||||
|
|
||||||
Fixed bug in `gam <UserTypeEntity> print messages ... positivecountsonly` where message counts with value 0 were deiplayed.
|
Fixed bug in `gam <UserTypeEntity> print messages ... positivecountsonly` where message counts with value 0 were deiplayed.
|
||||||
|
|||||||
@@ -9695,16 +9695,18 @@ def MultiprocessGAMCommands(items, showCmds):
|
|||||||
GM.Globals[GM.MULTIPROCESS_EXIT_PROCESSING] = True
|
GM.Globals[GM.MULTIPROCESS_EXIT_PROCESSING] = True
|
||||||
|
|
||||||
def signal_handler(sig, frame):
|
def signal_handler(sig, frame):
|
||||||
controlC['trapped'] = True
|
nonlocal controlC
|
||||||
|
controlC = True
|
||||||
|
|
||||||
def handleControlC(source):
|
def handleControlC(source):
|
||||||
|
nonlocal controlC
|
||||||
batchWriteStderr(f'Control-C (Multiprocess-{source})\n')
|
batchWriteStderr(f'Control-C (Multiprocess-{source})\n')
|
||||||
setSysExitRC(KEYBOARD_INTERRUPT_RC)
|
setSysExitRC(KEYBOARD_INTERRUPT_RC)
|
||||||
batchWriteStderr(Msg.BATCH_CSV_TERMINATE_N_PROCESSES.format(currentISOformatTimeStamp(),
|
batchWriteStderr(Msg.BATCH_CSV_TERMINATE_N_PROCESSES.format(currentISOformatTimeStamp(),
|
||||||
numItems, poolProcessResults[0],
|
numItems, poolProcessResults[0],
|
||||||
PROCESS_PLURAL_SINGULAR[poolProcessResults[0] == 1]))
|
PROCESS_PLURAL_SINGULAR[poolProcessResults[0] == 1]))
|
||||||
pool.terminate()
|
pool.terminate()
|
||||||
controlC['trapped'] = False
|
controlC = False
|
||||||
|
|
||||||
if not items:
|
if not items:
|
||||||
return
|
return
|
||||||
@@ -9758,7 +9760,7 @@ def MultiprocessGAMCommands(items, showCmds):
|
|||||||
else:
|
else:
|
||||||
mpQueueCSVFile = None
|
mpQueueCSVFile = None
|
||||||
# signal.signal(signal.SIGINT, origSigintHandler)
|
# signal.signal(signal.SIGINT, origSigintHandler)
|
||||||
controlC = {'trapped': False}
|
controlC = False
|
||||||
signal.signal(signal.SIGINT, signal_handler)
|
signal.signal(signal.SIGINT, signal_handler)
|
||||||
batchWriteStderr(Msg.USING_N_PROCESSES.format(currentISOformatTimeStamp(),
|
batchWriteStderr(Msg.USING_N_PROCESSES.format(currentISOformatTimeStamp(),
|
||||||
numItems, numPoolProcesses,
|
numItems, numPoolProcesses,
|
||||||
@@ -9769,7 +9771,7 @@ def MultiprocessGAMCommands(items, showCmds):
|
|||||||
for item in items:
|
for item in items:
|
||||||
if GM.Globals[GM.MULTIPROCESS_EXIT_PROCESSING]:
|
if GM.Globals[GM.MULTIPROCESS_EXIT_PROCESSING]:
|
||||||
break
|
break
|
||||||
if controlC['trapped']:
|
if controlC:
|
||||||
break
|
break
|
||||||
if item[0] == Cmd.COMMIT_BATCH_CMD:
|
if item[0] == Cmd.COMMIT_BATCH_CMD:
|
||||||
batchWriteStderr(Msg.COMMIT_BATCH_WAIT_N_PROCESSES.format(currentISOformatTimeStamp(),
|
batchWriteStderr(Msg.COMMIT_BATCH_WAIT_N_PROCESSES.format(currentISOformatTimeStamp(),
|
||||||
@@ -9839,7 +9841,7 @@ def MultiprocessGAMCommands(items, showCmds):
|
|||||||
break
|
break
|
||||||
time.sleep(1)
|
time.sleep(1)
|
||||||
processWaitStart = time.time()
|
processWaitStart = time.time()
|
||||||
if not controlC['trapped']:
|
if not controlC:
|
||||||
if GC.Values[GC.PROCESS_WAIT_LIMIT] > 0:
|
if GC.Values[GC.PROCESS_WAIT_LIMIT] > 0:
|
||||||
waitRemaining = GC.Values[GC.PROCESS_WAIT_LIMIT]
|
waitRemaining = GC.Values[GC.PROCESS_WAIT_LIMIT]
|
||||||
else:
|
else:
|
||||||
@@ -9857,6 +9859,9 @@ def MultiprocessGAMCommands(items, showCmds):
|
|||||||
for p in completedProcesses:
|
for p in completedProcesses:
|
||||||
del poolProcessResults[p]
|
del poolProcessResults[p]
|
||||||
if poolProcessResults[0] > 0:
|
if poolProcessResults[0] > 0:
|
||||||
|
if controlC:
|
||||||
|
handleControlC('SIG')
|
||||||
|
break
|
||||||
time.sleep(5)
|
time.sleep(5)
|
||||||
if GC.Values[GC.PROCESS_WAIT_LIMIT] > 0:
|
if GC.Values[GC.PROCESS_WAIT_LIMIT] > 0:
|
||||||
delta = int(time.time()-processWaitStart)
|
delta = int(time.time()-processWaitStart)
|
||||||
|
|||||||
Reference in New Issue
Block a user