- detect provisioning when updateing status to installing/netbooting
- consistent message format "xcat.updatestatus - ($node): changing status=($status)" (no need to log the time as syslog has the timestamp)
* site cache when run plugin does not work very well
- using cache from plugin when getNodesAttribs/getNodeAttribs (pass it into DB process from plugin process)
- Site cache is a whole hash, so to use cache when by the hash is there, instead of the specified key is there.
It is because that there might be no key defined in site table.
* with XCATBYPASS, to populate site hash before scan_plugins. Then only 1 query for site table to do whole things.
* cache site when init plugins on service nodes
* missing to comment the old codes query from xCAT DB process
- modify rsyslog conf and add "%syslogseverity-text:::uppercase%" to input the text Severity
- remove duplicate Severity in log message
- modify MsgUtils::trace for better performance and code structure
- make sure $pid_UDP is set to zero when UDP process quit in CHLD handler
- disable the signal handler for CHLD in the end of SSL lister, and make itself to handle reaper via `wait`
* Fix the issue 'install monitor' exit unexpected (#4582).
- add eval block to cover all possible codes which might die in do_installm_service
- add more logs in install monitor to record useful inforamtion
- add sleep 0.01 to avoid CPU too high
- fix the wrong timeout usage (alarm - die)
- recover the default INT/TERM singal handler to avoid UDP listener will quick when kill 'install monitor'
* Avoid SSL CPU 100% when hit max open file number
- clear logs in the key components during provisioning (not only debug mode, but debug mode will have more logs)
- now only cover rhel7 stateful and stateless
- make more syslogs into cluster.log (tag = xcat or xcat.*)
- the changes will not impact other distro
This commit disable the ACK mechanism in xCATd as now it will cause the race condition
if multiple child processes are waiting for the response.
fix-issue: #3698
* Add trace point for perf tool in xcatd (#903)
This patch aims to enable nytprof library to analyze the performance
of xcat code in statement level.
- Add perf trace point in xcatd
- Add sleep time for db prcess to solve the race condition when
- perf instraction is used.
More reference
To enable prof:
perl -dt:NYTProf /opt/xcat/sbin/xcatd -f
Some perf test sample:
https://github.com/chenglch/xcatperf
* refine the performance of makedhcp (#2901), it including:
- refine the code logic in getSNList to get better performance
- refine the getipaddr, cache the dns lookup result
- refine noderangecontainsMn
- refine ishostinsubnet
'xCAT::MsgUtils->trace' will retrive data from xCAT site table,
at this time timeout event happens and alarm signal received,
current process will exit unexpectly.
partial-bug: pmr 87739,077,724