Message-ID: <538848876.8849.1711703815439.JavaMail.confluence@host3.pipelinefx.com> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_8848_1974127518.1711703815439" ------=_Part_8848_1974127518.1711703815439 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
################################################################=
##############
@RELEASE: 6.9-2b
#################################=
#############################################
@SUMMARY: This is a supervisor-only patch release of 6.9-2 that includes=
the
following key fixes.
=3D=3D=3D=3D CL 18910 =3D=3D=3D=3D
@INTERNAL FIX: supervisor patche=
s to help cut down on the number of threads,
and reduce chances of rep=
eated worker rejections on some farms due to
race-conditions/timing is=
sues.
ZD17713
=3D=3D=3D=3D CL 18822 =3D=3D=3D=3D
@FIX: a bug in the startHost() d=
ispatch routine causing the supervisor NOT to
always dispatch jobs to =
workers when they became available.
ZD: 17713
########################################################################= #######
@RELEASE: 6.9-2a
########################################################################= ######
@SUMMARY: 6.9-2a is a patch release of 6.9-2, and includes the following= fixes.
=3D=3D=3D=3D CL 18717 =3D=3D=3D=3D
@FIX: Job instances can become u=
nkill-able with QB_PREEMPT_MODE_FAIL internal status
JIRA: QUBE-2819
=3D=3D=3D=3D CL 18351 =3D=3D=3D=3D
@CHANGE: background helper threa=
d improvements
* limit the number of workers that are potentially recontacted by the ba= ckground helper routine to 50 per iteration.
* background thread exits and refreshes after running for approximately = 1 hour, as opposed to 24 hours
ZD: 17124
=3D=3D=3D=3D CL 18340 =3D=3D=3D=3D
@FIX: allow special characters i=
n job name field at submissions
JIRA: QUBE-2748
=3D=3D=3D=3D CL 18324 =3D=3D=3D=3D
@CHANGE: output of "qbadmin=
s -config" and "qbadmin w -config hostname" now sorted alph=
abetically.
JIRA: QUBE-2654
=3D=3D=3D=3D CL 18285 =3D=3D=3D=3D
@FIX: add better error-checks in=
cmdrange jobtype's log-parsing code, in case the log file is not readable.=
In some situations, fseek() was causing crashes in the parseFileStream()= routine.
ZD: 17442
=3D=3D=3D=3D CL 18221 =3D=3D=3D=3D
@FIX: prevent "host.process=
ors" to be unset when jobs are modified.
JIRA: QUBE-2649
=3D=3D=3D=3D CL 18157 =3D=3D=3D=3D
@FIX: shortened the timeout for =
"qbreportwork" when it reports a "failed" work that has=
migrate_on_frame_retry from 600 seconds to 20.
This was causing long 10-minute pauses on the job instance when a frame<= br />fails after exhausting all of its retry counts.
Original change was made in CL17206, for QUBE-2202/ZD16553.
ZD: 17447
=3D=3D=3D=3D CL 18147 =3D=3D=3D=3D
@FIX: Windows worker wouldn't pr=
operly release automounted drives at the end of running a job instance
ZD: 17400
=3D=3D=3D=3D CL 18001 =3D=3D=3D=3D
@FIX: Pytnon API's qb.ping(asDic=
t=3DTrue) was broken when metered licensing was unauthorized, because of th=
e minus sign
=3D=3D=3D=3D CL 17889 =3D=3D=3D=3D
@CHANGE: job queries requesting =
for subjob and/or work details now must explicitly provide job IDs.
Both qbjobinfo() C++ and qb.jobinfo() Python APIs now reject such submis= sions and return an error.
For example, the Python call "qb.jobinfo(subjobs=3DTrue)" will= raise a runtime exception. It must be now called like "qb.jobinfo(sub= jobs=3DTrue, id=3D12345)" or "qb.jobinfo(subjobs=3DTrue, id=3D[12= 34,5678])"
JIRA: QUBE-244
=3D=3D=3D=3D CL 17863 =3D=3D=3D=3D
@FIX: Qube language callback com=
mand "mail-status" wasn't working properly, setting the smtp &quo=
t;TO" field to an incorrect string.
=3D=3D=3D=3D CL 17858 =3D=3D=3D=3D
@FIX: qb.deleteworkerproperties(=
) and qb.deleteworkerresources() fn should return an error when used with t=
he wrong 2nd arg (must be a list)
ZD: 16932
JIRA: QUBE-2381
=3D=3D=3D=3D CL 17856 =3D=3D=3D=3D
@FIX: misleading "invalid k=
ey" error message in supelog when supervisor_max_metered_licenses set =
to 0
JIRA: QUBE-2397
=3D=3D=3D=3D CL 17797 =3D=3D=3D=3D
@FIX: ignore any ethernet interf=
ace with "virutal" in its description when detecting the primary =
MAC address on Windows.
ZD 17072
=3D=3D=3D=3D CL 17790 =3D=3D=3D=3D
@FIX: issue where the background=
helper thread frequently sends 2 or more update requests (QB_MESSAGE_REQUE=
ST_UPDATE) to a single "questionable" worker (i.e., one that has =
missed enough heartbeats, and potentially down) at once.
ZD: 17124
=3D=3D=3D=3D CL 17735 =3D=3D=3D=3D
@FIX: badlogin jobs can't be ret=
ried or killed (previously fixed in CL15011, but regressed)
JIRA: QUBE-642
ZD: 12699, 17010
=3D=3D=3D=3D CL 16491 =3D=3D=3D=3D
@NOTES:Add support for AfterEffe=
cts point release scheme (2015.3)
########################################################################=
######
@RELEASE: 6.9-2
########################################################################= ######
@SUMMARY: This is a maintenance release of 6.9, and includes a few fixes=
and improvements to 6.9-1. Recommended upgrade for all 6.9 customers=
.
########################################################################= ######
=3D=3D=3D=3D CL 17763 =3D=3D=3D=3D
Supervisor and worker now use co=
rrect startup scripts for CentOS 7+.
=3D=3D=3D=3D CL 17735 =3D=3D=3D=3D
@FIX: badlogin jobs can't be ret=
ried or killed (previously fixed in CL15011, but regressed)
JIRA: QUBE-642
ZD: 12699, 17010
########################################################################= ######
@RELEASE: 6.9-1
########################################################################= ######
@SUMMARY: This is a maintenance release of 6.9, and includes a number of=
fixes
and improvements to 6.9-0. Recommended upgrade for all 6.9 cus=
tomers.
########################################################################= ######
=3D=3D=3D=3D CL 17696 =3D=3D=3D=3D
@UPDATE: add explanation f=
or "deferTableCreation" to the python qb.submit() API routine.
JIRA: QUBE-2400
=3D=3D=3D=3D CL 17692 =3D=3D=3D=3D
@FIX: another memory leak plugge=
d in the startHost()-related routine, startQualifiedJobsOnHost(). This was =
causing successful itereations of startHost() (i.e., an instance was dispat=
ched to a worker) to cause memory bloats. Among other places, it was affect=
ing the background helper thread (when it does the "requeuing host&quo=
t; routine.
JIRA: QUBE-2382
=3D=3D=3D=3D CL 17649 =3D=3D=3D=3D
@FIX: memory leak in preemption =
code, especially when preemption policy is set to passive or is disabled by=
the algorithm.
QUBE: JIRA-2382
=3D=3D=3D=3D CL 17634 =3D=3D=3D=3D
@FIX: memory leak in one of the =
host-triggered dispatch routines
startQualifiedJobsOnHost(), which is =
called from startHost().
Among other things, this was bloating the memory usage inside the helper=
routine running in a background thread/process (cleanermain()).
JIRA: QUBE-2382
ZD: 16952
=3D=3D=3D=3D CL 17610 =3D=3D=3D=3D
@FIX: memory corruption that wou=
ld cause python or perl to crash when the function was called inside jobs.<=
/p>
JIRA: QUBE-2389
=3D=3D=3D=3D CL 17595 =3D=3D=3D=3D
@FIX: fixed memory leak in QbPac=
k::store() and storeXML() methods, which were causing, among other things, =
supervisor threads to bloat when processing large job submissions
JIRA: QUBE-2382
=3D=3D=3D=3D CL 17594 =3D=3D=3D=3D
@FIX: plugged a potential memory=
leak in QbDaemon communication code, affecting all server (supervisor, wor=
ker) programs
JIRA: QUBE-2382
=3D=3D=3D=3D CL 17593 =3D=3D=3D=3D
@FIX: plugged memory leak in dis=
patch code
JIRA: QUBE-2382
=3D=3D=3D=3D CL 17592 =3D=3D=3D=3D
@FIX: plugged potential memory l=
eak in user permission-check routine, specifically in the group-access chec=
k code
JIRA: QUBE-2382
=3D=3D=3D=3D CL 17566 =3D=3D=3D=3D
@NEW: qbwrk.conf loading optimiz=
ation (and thus "qbadmin w -reconfig" speed up) by explictly list=
ing template names and non-existing hostnames in the new [global_config] se=
ction
* added [global_config] section to the qbwrk.conf file, and allow new co= nfig parameters "templates" to list all qbwrk.conf template secti= on names, and "non_existent" to list all non-existent hostnames= p>
* supe skips ip-address resolution for all section names included in &qu= ot;templates" and "non_existent", and all reserved names, i.= e.: "global_config", "default", "linux", &quo= t;osx", and "winnt", thus speeding up the loading of qbwrk.c= onf file, which in turn speeds up supervisor boot time and "qbadmin w = -reconfig" operation.
JIRA: QUBE-2346
=3D=3D=3D=3D CL 17540 =3D=3D=3D=3D
@CHANGE: removed unnecessary sub=
mit-time check/rejection of omithosts and omitgroups.
ZD: 16907, 16908
JIRA: QUBE-2366
=3D=3D=3D=3D CL 17449 =3D=3D=3D=3D
@FIX: directory deletion during =
log cleanup can fail if the supervisor is updating the job history file at =
the same time
=3D=3D=3D=3D CL 17435 =3D=3D=3D=3D
@FIX: supervisor process handlin=
g a qbping request should always reread the license file before replying
There was a code path that instructs the supe thread to force-read thelicense file, but the read was not happening under certain conditions; =
the
code was returning the old cached data if available, or the defaul=
t count
of 2 if the cache isn't available.
* add a few more informational lines to print to the supelog at license<= br /> re-reading.
JIRA: QUBE-2317
=3D=3D=3D=3D CL 17422 =3D=3D=3D=3D
@FIX: make formatting and object=
instantiation compatible with Python 2.6
=3D=3D=3D=3D CL 17416 =3D=3D=3D=3D
@FIX: remove unnecessary error m=
essage in the schema upgrade routine
JIRA: QUBE-2283
=3D=3D=3D=3D CL 17414 =3D=3D=3D=3D
@CHANGE: Add more text to descri=
be the subtle yet significant difference between "retry" and &quo=
t;requeue" Python API routines
JIRA: QUBE-2049
=3D=3D=3D=3D CL 17403 =3D=3D=3D=3D
@FIX: jobs with status "reg=
istering" appears when submissions are rejected due to incorrect requi=
rements specifications
ZD: 16408
JIRA: QUBE-2034
=3D=3D=3D=3D CL 17402 =3D=3D=3D=3D
@FIX: intermittent bug where som=
e supe threads won't properly read the supervisor license key from qb.lic=
p>
* add warning message to print to supelog when the license file reader returns zero-length data
ZD: 16828
JIRA: QUBE-2317
=3D=3D=3D=3D CL 17390 =3D=3D=3D=3D
@FIX: post-flight should only be=
run when qbreportwork() is invoked with an agenda-item with terminal-state=
JIRA: QUBE-2032
ZD: 16412
=3D=3D=3D=3D CL 17376 =3D=3D=3D=3D
@FIX: Triggers incorrectly execu=
ting multiple times
When a composite (i.e, using && or ||) trigger is specified for =
a job's callback, such as "done-job-job1 && done-job-job2"=
;,
the callback would erroneously get run multiple times.
ZD: 16282
JIRA: QUBE-1881
=3D=3D=3D=3D CL 17369 =3D=3D=3D=3D
@FIX: issue introduced in 6.9 wh=
ere requestwork() jobtype backend routine will crash when frame padding is =
40 or greater.
Python jobtype backend, in particular, was found to crash during a call =
to
the API routine qb.requestwork(), with a "*** stack smashing d=
etected ***:"
error message and a backtrace.
ZD: 16759
JIRA: QUBE-2318
=3D=3D=3D=3D CL 17290 =3D=3D=3D=3D
@TWEAK: license-reading routine =
prints the total license count to the supelog
JIRA: QUBE-2003
=3D=3D=3D=3D CL 17289 =3D=3D=3D=3D
@TWEAK: "ping" handler=
to print out more info to supelog
Every "qbping" will print out something like the following sup= elog now:
[Nov 18, 2016 16:25:55] shinyambp[11662]: INFO: responded to ping reques= t from [127.0.0.1]: 6.9-0 bld-custom osx - - host - 0/11 unlimited licenses= (metered=3D0/0) - mode=3D0 (0)
JIRA: QUBE-2002
=3D=3D=3D=3D CL 17231 =3D=3D=3D=3D
@FIX: disabled verbose option fo=
r logging libcurl actions
=3D=3D=3D=3D CL 17208 =3D=3D=3D=3D
@CHANGE: Popluate the subjob (in=
stance) objects with more data (like status), and not just the IDs, when su=
bjob info is requested via "qbhostinfo" (qb.hostinfo(subjobs=3DTr=
ue) for python API)
Previously, only jobid, subid, and host info (name, address, macaddress)=
were filled. Now, things like "status", "timestart&quo=
t;, "allocations",
etc. are properly filled in.
JIRA: QUBE-2073
ZD: 16541
=3D=3D=3D=3D CL 17206 =3D=3D=3D=3D
@FIX: When "migrate_on_fram=
e_retry" job flag is set, prevent backend from doing further processin=
g (especially another requestwork()) after a work failed
This was causing race-conditions that will get agenda items to be stuck =
in
"retrying" state, while there are no instances processing=
them.
Now the reportwork() API routine is modified so that if it's invoked to<=
br />report that a work "failed", and the "migrate_on_frame_=
retry" is set on the
job, it will stop processing (does a long sl=
eep), and let the worker/proxy
do the process clean up.
JIRA: QUBE-2202
ZD: 16553
=3D=3D=3D=3D CL 17186 =3D=3D=3D=3D
@FIX: "VirtualBox Host-Only=
Ethernet Adapter" now when daemons (supe, worker) try to pick a prima=
ry mac address
JIRA: QUBE-2149
ZD: 16561
=3D=3D=3D=3D CL 17182 =3D=3D=3D=3D
@CHANGE: all classes that inheri=
t from QbObject print as a regular dictionary, no longer have a __repr__ wh=
ich prints the job data as a single flat string
@NEW: add qb.validatej=
ob() function to python API, help find malformed jobs that crash the user i=
nterfaces
=3D=3D=3D=3D CL 17141 =3D=3D=3D=3D
@FIX: Any job submitted from wit=
hin a running job picks up the pgrp of the submitting job
By design, if the submission environment has QBGRPID and QBJOBID set, th=
e
API's submission routine will set the job's pgrp and pid, respective=
ly to
the values specified in the environment variables.
One couldn't override this "inheritance" behavior even by expl=
icitly
specifying "pgrp" or "pid" in the job being=
submitted, for instance with
the "-pgrp" command-line optio=
n of qbsub.
Fixed, so that setting "pgrp" to 0 on submission means that th=
e job should
generate its own pgrp instead of inheriting it from the e=
nvironment.
JIRA: QUBE-2141
ZD: 16545
=3D=3D=3D=3D CL 17101 =3D=3D=3D=3D
@NEW: add "-dying" and=
"-registering" options to qbjobs.
@CHANGE: also add dying a=
nd registering jobs to the "-active" filter.
JIRA: QUBE-2091
ZD: 16469
=3D=3D=3D=3D CL 17083 =3D=3D=3D=3D
@FIX: Python API: qbping(asDict=
=3DTrue) crashes when used against older (pre-6.9) supe
Among other things, this was causing WV to crash and AV to note an
=
exception (but not crash) when starting up with an older supervisro.
JIRA: QUBE-2084
########################################################################= ######
@RELEASE: 6.9-0
########################################################################= ######
=3D=3D=3D=3D CL 16804 =3D=3D=3D=3D
@TWEAK: added code to print what=
operation was requested, when printing out "permission granted to use=
r..."
=3D=3D=3D=3D CL 16776 =3D=3D=3D=3D
@FIX: Python API should handle e=
xception for when gethostbyname() doesn't work in mysqlConnect
JIRA: QUBE-1965
=3D=3D=3D=3D CL 16770 =3D=3D=3D=3D
@CHANGE: Ensure that the pending=
reasons returned by qb.hostorder (or qbhostorder command) take metered lic=
ensing into account
JIRA: QUBE-1986
=3D=3D=3D=3D CL 16696 =3D=3D=3D=3D
@NEW: add supervisor_max_metered=
_licenses support to qb.conf, which enables site-admins to customize the ef=
fective limit of metered licenses that can be used at any given time.
This number must be smaller than the metered account's limit, or it will=
be
capped at the account limit.
Setting this to 0 effectively disables metered licensing, while setting =
it
to -1 (default), allows usage up to the metered account's limit .=
p>
JIRA: QUBE-1867
=3D=3D=3D=3D CL 16668 =3D=3D=3D=3D
@NEW: made available some frame-=
padding related environment variables during the execution of job instances=
and pre/postflights:
QB_FRAME_PADDING
QB_PADDED_FRAME_NUMBER
QB_PADDED_FRAME_START<=
br />QB_PADDED_FRAME_END
QB_PADDED_FRAME_STEP
JIRA: QUBE-1841
=3D=3D=3D=3D CL 16665 =3D=3D=3D=3D
@CHANGE: All "subjob" =
sections in qbsummary output show "instance" in the title
@CHANGE: renamed "*vs" options to "*vi" (such as &qu=
ot;pvi" or "cvi"). For
compatibility, the older names s=
till work, just not advertised in the
"help" output
@FIX: const-ness of QbString::replacevalue() method
JIRA: QUBE-1617
=3D=3D=3D=3D CL 16643 =3D=3D=3D=3D
@FIX: added dependency on mysql-=
libs (or mariadb-libs) to the supervisor RPM
JIRA: QUBE-1784
=3D=3D=3D=3D CL 16642 =3D=3D=3D=3D
@CHANGE: automatic capping of pr=
iorities to supervisor_highest_user_priority
if an ordinary (non-admin) user tries to submit jobs at a higher priorit= y (i.e. lower numerical value) than supervisor_highest_user_priority, the j= obs will be accepted but with the priority automatically (and silently, exc= ept for a WARNING message in the supelog) capped at supervisor_highest_user= _priority
JIRA: QUBE-1804
=3D=3D=3D=3D CL 16629 =3D=3D=3D=3D
@CHANGE: "kill work" o=
n a running agenda item will now put the instance processing the agenda ite=
m back to "pending", instead of also killing it.
JIRA: QUBE-627
=3D=3D=3D=3D CL 16628 =3D=3D=3D=3D
@FIX: "qb_default_string()&=
quot; warning printed during linux qube-core installation
Corrected code so that warnings like the following won't print any more:=
WARNING: qb_default_string() unknown value[1001]
WARNING: qb_defaul=
t_string() unknown value[1002]
JIRA: QUBE-1894
=3D=3D=3D=3D CL 16602 =3D=3D=3D=3D
@FIX: misleading database name p=
rinted in error handler for MySQL stored procedures PFX_CALC_CPU_TIME() and=
PFX_CALC_AVG_WORK_TIME(); "ERROR: TABLE NOT FOUND IN DB pfx_dw.<ac=
tual_database_name>"
=3D=3D=3D=3D CL 16517 =3D=3D=3D=3D
@FIX: C4D appFinder jobs don't a=
pply path translation properly on Windows, backslashes are converted too ea=
rly
=3D=3D=3D=3D CL 16407 =3D=3D=3D=3D
@NEW: add SMTP Auth support over=
SSL and TLS connections.
@CHANGE:
* add new mail config qb.conf parameters: mail_user, mail_password, mail= _connection_type
* modified mail_port to be 0 by default, which means use the standard po= rt depending on connection type: 25, 465 (SSL), or 587 (TLS)
=3D=3D=3D=3D CL 16389 =3D=3D=3D=3D
@FIX: calls to qb.reportwork tha=
t happen very close together can cause the supervisor to deadlock on a sing=
le frame's status
=3D=3D=3D=3D CL 16379 =3D=3D=3D=3D
@FIX: case-insensitive parsing o=
f template names in qbwrk.conf when listed for template inheritance
The following now works (hostA will be in the "big" group):
[BigNode]
worker_groups =3D "big"
[hostA] : bignode
JIRA: QUBE-1809
=3D=3D=3D=3D CL 16369 =3D=3D=3D=3D
@FIX: don't mark the instance as=
failed if there is one more command to run, the child process has already =
exited, and the command is sys.exit(0); happens when maya is shut down with=
its native quit() function.
=3D=3D=3D=3D CL 16338 =3D=3D=3D=3D
@CHANGE: database checks script =
splits logging levels between stdout and stderr
=3D=3D=3D=3D CL 16308 =3D=3D=3D=3D
@CHANGE: fixed every reference t=
o "subjob" to "instance"
JIRA: QUBE-1768
=3D=3D=3D=3D CL 16303 =3D=3D=3D=3D
@CHANGE: add supervisor mode set=
tings (such as "disable_metered") to display in qbping output, an=
d be returned in the qb.ping(asDict=3DTrue) Pyhon API invocation
JIRA: QUBE-1759
=3D=3D=3D=3D CL 16286 =3D=3D=3D=3D
@FIX: checkDiskUsage fails when =
--mysql option is used and root can't authenticate
=3D=3D=3D=3D CL 16269 =3D=3D=3D=3D
@FIX: properly support timeouts =
on socket connections
@NEW: add "-timeout N" option to the qbping command, and the A= PI qbping(), qbworkerping(), and qbhostping() API routines now honor the ti= meout set via "qbsettimeout()".
QUBE-1746
=3D=3D=3D=3D CL 16266 =3D=3D=3D=3D
@NEW: a new command-line utility=
for performing both database health checks and data integrity checks
=3D=3D=3D=3D CL 16247 =3D=3D=3D=3D
@FIX: fixed qb.workid() in callb=
acks to return the correct workid of the current callback context (it had b=
een always returning None)
Also changed qb.jobstatus(), workstatus(), and subjobstatus() so that, i=
f
invoked in a callback giving no args (like a jobid and workid or sub=
jobid),
they return the status of the respective thing (job, work, or =
subjob) of
the current callback context.
JIRA: QUBE-1763
ZD: 16105
=3D=3D=3D=3D CL 16235 =3D=3D=3D=3D
@FIX: a problem with the filteri=
ng added to avoid jobs with an ID of 0, in CL15821
This was causing preemption to not function in many cases.
ZD: 16006
=3D=3D=3D=3D CL 16229 =3D=3D=3D=3D
@FIX: On Windows, daemons (supe,=
worker) now ignore VMWare Virtual Ethernet Adapters when trying to pick a =
primary mac address (QbConnection.cpp) for the host, which is used to uniqu=
ely identify hosts
ZD: 14481
=3D=3D=3D=3D CL 16214 =3D=3D=3D=3D
@FIX: aerender AppFinder manglin=
g first path conversion on Windows when using UNC
=3D=3D=3D=3D CL 16177 =3D=3D=3D=3D
@NEW: add metered_max and metere=
d_used fields to the dict returned by qb.ping(asDict=3DTrue)
JIRA: QUBE-1745
=3D=3D=3D=3D CL 16145 =3D=3D=3D=3D
@NEW: add support for Metered Li=
censing
=3D=3D=3D=3D CL 16139 =3D=3D=3D=3D
@FIX: Fixed the duplicate instan=
ce of "stop_activity" (i.e., it was listed twice), to "enfor=
ce_password" in qb_supervisor_mode_flag_string(), which was causing st=
ring to int conversion of the mode flags to be incorrect
=3D=3D=3D=3D CL 16064 =3D=3D=3D=3D
@FIX: when job 'dev' attribute T=
rue, printing the job package with regex_errors causes the logParser to gen=
erate a false positive for the regex_errors match
=3D=3D=3D=3D CL 16049 =3D=3D=3D=3D
@NEW: add 'outputPath match requ=
ired' to python-based jobs, frame/work is failed if no match is found
=3D=3D=3D=3D CL 15974 =3D=3D=3D=3D
@CHANGE: add support for "-=
conf PATH" to specify qb.conf for worker (phase 1)
QUBE-253
=3D=3D=3D=3D CL 15970 =3D=3D=3D=3D
@FIX: modified (un)install_super=
visor scripts to properly support CentOS/RHEL 7+ with mariadb and systemd.<=
/p>
Also modified configure_mysql script (for Linux) to be able to detect th=
e
version of mysql installed on the system, even when the server is no=
t
running
QUBE-1663
=3D=3D=3D=3D CL 15964 =3D=3D=3D=3D
@NEW: changes to code that gener=
ates/modifies my.cnf
@CHANGE: some refactoring of the configure_mysql script (run on linux on=
(un)installation of the supervisor to modify my.cnf.
@NEW: make sure "default-storage-engine=3DMyISAM" is set on Li= nux too
@NEW: add "query_cache_type=3D0" to my.cnf on all platforms
JIRA: QUBE-1663
=3D=3D=3D=3D CL 15960 =3D=3D=3D=3D
@FIX: jobs submitted with pgrp s=
et to a (null) string end up having a pgrp of 0
JIRA: QUBE-1668
=3D=3D=3D=3D CL 15957 =3D=3D=3D=3D
@FIX: use of single-quotes in jo=
b dependency "info-*" syntax results in hung job instances
JIRA: QUBE-1571
=3D=3D=3D=3D CL 15947 =3D=3D=3D=3D
@CHANGE: adding "default-st=
orage-engine=3DMYISAM" to the my.cnf generated for Linux/OSX supe inst=
allations
JIRA: QUBE-1663
=3D=3D=3D=3D CL 15936 =3D=3D=3D=3D
@CHANGE: add InnoDB to MyISAM co=
nversion code in upgrade_supervisor program for all "qube" tables=
JIRA: QUBE-1664
=3D=3D=3D=3D CL 15909 =3D=3D=3D=3D
@CHANGE: change flaw in auto-wra=
ngling logic in which it sometimes won't detect a bad worker, and allows it=
to fail many job agendas.
When a single job instance/worker has failed all of its assigned frames =
(at
least aw_activation_work_count frames) for a job, while other work=
ers are
still processing their first frame (i.e., no other worker/inst=
ance has
finished a frame), the system deems this worker "bad&quo=
t;, locks it, and
migrates the failed frames and instance, and notify =
the admin.
JIRA: QUBE-1475
ZD: 15219
=3D=3D=3D=3D CL 15865 =3D=3D=3D=3D
@CHANGE: Made section headers (s=
uch as "[default]" or "[node[001-199]]") case-insensiti=
ve in config files such as qbwrk.conf
JIRA: QUBE-1356
=3D=3D=3D=3D CL 15821 =3D=3D=3D=3D
@FIX: add code to the DB routine=
s and doPreemption() routine to silently ignore job records with job ID of =
0 (likely due to corrupt DB records), which was spewing out many warning me=
ssages into the supelog
ZD:15739
=3D=3D=3D=3D CL 15809 =3D=3D=3D=3D
@FIX: backslashed characters in =
VRED jobs get treated as escape characters
=3D=3D=3D=3D CL 15700 =3D=3D=3D=3D
@NEW: add "--conf filename&=
quot; option to supervisor to specify an alternate location and name for th=
e qb.conf file
JIRA: QUBE-253
=3D=3D=3D=3D CL 15673 =3D=3D=3D=3D
@FIX: orphaned job processes lef=
t behind on Windows workers, especially when the proxy.exe program dies une=
xpectedly
ZD: 15518
=3D=3D=3D=3D CL 15653 =3D=3D=3D=3D
@FIX: setting jobss "pgrp&q=
uot; value prior to submission is ignored for all but the first job when su=
bmitting a list of jobs via a single call to the qbsubmit() API routine
JIRA: QUBE-1536
ZD: 15528
=3D=3D=3D=3D CL 15650 =3D=3D=3D=3D
@FIX: Explicitly setting "h=
ost.memory" in worker_resources broken on Linux
ZD: 15505
JIRA: QUBE-1531
=3D=3D=3D=3D CL 15642 =3D=3D=3D=3D
@FIX: Unix (Linux/OSX) workers, =
when running a cleanup process for a teminating job instance (via removeJob=
()), would sometimes inadvertently kill processes belonging to other job in=
stances, due to process IDs once owned by the terminating job being reused =
by the system.
ZD: 15548
=3D=3D=3D=3D CL 15567 =3D=3D=3D=3D
@FIX: supervisor_default_max_cpu=
s value was not being applied properly
ZD: 15503
JIRA: QUBE-1528
=3D=3D=3D=3D CL 15560 =3D=3D=3D=3D
@CHANGE: "modify" oper=
ation will print, into the supelog and the job's .hst file, the values of t=
he newly modified parameters
JIRA: QUBE-1318
ZD: 14979
=3D=3D=3D=3D CL 15531 =3D=3D=3D=3D
@NEW: add r=
un_program_and_convert_encoding.pl script, which is a wrapper to run an=
y given program and convert its stdout from and to specified encodings (lik=
e UTF-16le to UTF-8).
Added to support 3dsmax batch (i.e., "cmdrange") submissions.<= /p>
JIRA: QUBE-1210
=3D=3D=3D=3D CL 15462 =3D=3D=3D=3D
@FIX: removed submission-time ch=
eck for jobtype existence on the farm, as it was causing false negatives in=
certain cases and disallowing submissions
ZD: 15328, 15831
=3D=3D=3D=3D CL 15423 =3D=3D=3D=3D
@FIX: KeyError: "regex_outp=
utPaths" is raised when min file size check is specifiec, but no outpu=
tPath regular expression is defined
=3D=3D=3D=3D CL 15384 =3D=3D=3D=3D
@NEW: add Mac OS X 10.11, aka &q=
uot;El Capitan" support
=3D=3D=3D=3D CL 15380 =3D=3D=3D=3D
@CHANGE: modification now allowe=
d on "done" jobs
ZD: 15281
=3D=3D=3D=3D CL 15351 =3D=3D=3D=3D
@FIX: Windows issue where wirele=
ss network interfaces are ignored when licenses are verified, causing licen=
se keys bound to such interfaces to not work.
=3D=3D=3D=3D CL 15347 =3D=3D=3D=3D
@FIX: Windows issue where wirele=
ss network interfaces are ignored when licenses are verified, causing licen=
se keys bound to such interfaces to not work.
=3D=3D=3D=3D CL 15324 =3D=3D=3D=3D
@CHANGE: supervisor on Win32 to =
build against Perl 5.8 (upgraded from 5.6) to avoid build issues on new bui=
ld platform.