-
spelling: fix mistake, exclude
INSTALLfile from spellcheck (#848) -
plugin: clear internal data structures during initialization (#851)
-
update-usage: changet_runfilter tot_inactive(#854) -
view-usage-report: remove "project" field (#855)
-
github: add dependabot support (#846)
-
github: bump the github-actions group with 3 updates (#847)
-
ci: add
el10builder (#852)
- generate-matrix: change release builder from RHEL8 to RHEL9 (#844)
-
priority-update: add max_sched_jobs field (#823)
-
view-job-records: change default job ID format to f58 (#824) -
edit-factor: add the possibility to edit the urgency weight (#828)
-
edit-bank: fix
ValueErrormessage when trying to edit a bank's shares to<= 0(#830)
-
database: add
max_sched_jobsproperty for queues in flux-accounting DB (#837) -
plugin: add limit of max number of jobs in SCHED state per-queue (#840)
- doc: add link to HPSF presentation (#839)
-
ci: upgrade actions to v5 (#826)
-
docker: add
nobleDockerfile to CI (#832) -
t: add valgrind suppression (#833)
-
.github: update tarball release GitHub actions version (#834)
-
valgrind.supp: generalize suppression for mem leak (#835)
-
t: just add entire
expected/directory (#836) -
t: use format string for comparing output in
t1043-view-jobs-by-bank.t(#841)
-
bindings: use
FLUX_USERID_UNKNOWNas default (#800) -
repo: add MAINTAINERS file (#803)
-
delete_bank(): update job usage after bank is removed with--force(#808) -
add-bank/add-user: add check for existing DB structure when trying to add a bank or association (#810) -
repo: add
LICENSE,NEWS.mdto release tarball (#813) -
apply_decay_factor: change decay application to incremental instead of cumulative (#816) -
plugin: minor improvements to logic, variable initialization (#817)
-
jobs_table_subcommands: remove stray
print()statements (#819)
- commands: add new
clear-usagecommand to reset a bank's job usage (#804)
-
doc: add man page for
clear-usagecommand, update docs with related information (#814) -
doc: fix bank factor job priority example (#820)
-
t: adjust end date in
t1075-custom-usage-reporting(#805) -
testsuite: set log-stderr-level on command line (#812)
-
t: make Python test DB names unique (#818)
-
plugin: fix valgrind "Conditional jump or move depends on uninitialized values" error (#791)
-
plugin: check
held_jobsvector before callingcheck_and_release_held_jobs ()(#796)
-
doc: fix use of
-Joption in job usage factor example (#797) -
doc: update accounting guide with new table (#798)
-
fetch-job-records: add proper logging (#784) -
plugin: set load order of active jobs during initialization (#785)
- plugin: add ability to initialize plugin with database information on load (#781)
- test: add
el9image to CI (#782)
-
plugin: remove job from
held_jobsif cancelled (#765) -
python: explicitly close
Cursorobjects after use in user commands (#768) -
bindings: close
Cursorobjects when function exits (#769) -
fetch-job-records: check ift_runexists (#774)
-
commands: add
sync-useridscommand (#775) -
jobs: add-j/--jobids,-v/--verboseoptional arguments (#777)
-
doc: add more guide on limits, FAQ section (#771)
-
doc: update
man(1)page with new args forjobscommand (#778) -
doc: add troubleshooting guide (#779)
-
mergify: disable temporary PR branches (#762)
-
mergify: remove
queue_conditions,status-successchecks (#767)
-
view-user/edit-user: use"unlimited"to display and setmax_nodesandmax_coresto their default values (#751) -
update-usage: add-v/--verboseoption (#753) -
plugin: check dependencies of held jobs after
flux account-priority-update(#752) -
plugin: remove job from
held_jobsif cancelled (#765)
-
plugin: add more information returned in output of
flux jobtap query(#737) -
util: add
parse_timestamp()function (#740) -
jobscommand: add more options to filter jobs by (#741) -
view-job-records: add filter for duration delta of jobs (#742) -
list-users: extend command to search for multiple values per filter (#745)
- doc: expand example job priority calculation (#747)
-
testsuite: stop using
flux job cancelall(#743) -
t1043: add
wait-eventfor jobs after cancelling (#746) -
mergify: disable temporary PR branches (#762)
-
mergify: remove queue_conditions, status-success checks (#767)
- plugin: don't initialize "queues" map when checking limits (#734)
-
plugin: improve error message context in job.validate (#712)
-
cmd: remove
--output-fileargument (#716) -
formatter: remove
HierarchyFormatterclass (#717) -
update-fshare: wrapUPDATEs in single transaction, enablePRAGMAs to enable concurrency (#720) -
scrub-old-jobs: add0return code on successful runs ofscrub_old_jobs()(#721) -
update-usage: condenseSELECTquery to fetch recent job usage factor, use row names, drop unused function arg (#722) -
update-usage: remove extraSELECTquery in favor of retrieving past job usage information beforehand (#723) -
update-usage: removeSELECTquery onjobstable for every association (#725) -
update-usage: add.rollback()in case of error (#726) -
github: update crate-ci version (#727)
-
jobs: add duration fields tojobstable, return both requested and actual duration inview-job-records(#718) -
view-job-records: add filters for requested duration and actual duration injobstable (#719) -
view-bank: add-c/--conciseoption (#730) -
python: add general utility file for duplicate function definitions, general helper functions (#731)
- testsuite: don't load deprecated barrier module (#724)
- plugin: reject jobs that exceed an association's or queue's max resources limits (#710)
-
database: add
max_nodescolumn toqueue_table(#695) -
priority-update: send
max_nodes_per_assocto plugin, addmax_nodes_per_assocattribute toQueueclass (#702) -
plugin: add
QueueUsageclass to track an association's node usage per-queue (#703) -
command: add
edit-all-userscommand (#700) -
plugin: add enforcement of a per-queue max nodes limit (#704)
-
bindings: add
db_version()function, use it across scripts that check DB version (#684) -
view-user: add-J/--job-usageoptional arg (#706)
-
update-usage: move one-time SQL query out of
for-loop, combine per-association queries (#680) -
add-user: remove extra.commit()whenINSERT-ing values intoassociation_table(#681) -
plugin: remove unused function arguments from
priority_calculation ()(#687) -
jobs: use fair-share at priority calculation instead of association's current fair-share (#686) -
flux-accounting service: use
DB_SCHEMA_VERSIONconstant instead of hard-coded value (#683) -
plugin: shorten line that is greater than 80 characters (#696)
-
bindings/: remove job-usage documentation (#705) -
BankFormatter: reduce duplicate traversal code (#676)
-
doc: add note about case sensitivity for names (#698)
-
doc: update
man(1)page foredit-user(#701) -
doc: add flux-accounting "Module Structure" page (#707)
-
plugin: enforce max resource limits per-association (#562)
-
database: add new table to store priority factors and their weights (#665)
-
plugin: unpack priority factor weights from database (#670)
-
plugin: add weight for
urgencyfactor, update docs with new equation (#673) -
commands: add new
jobscommand to view priority breakdowns of jobs (#674) -
database: add graph commands for displaying job usage values for associations, banks (#677)
-
flux-accounting service: use
.get()instead of direct key access (#653) -
update-usage: remove extra
.commit()from helper function (#675) -
job-usage update: move update out of flux-accounting service and into own script (#657)
-
doc: add
man(1)pages for priority factor commands (#672) -
doc: add new "Limits" page (#667)
-
doc: add
man(1)page forview-job-records(#669) -
doc: update top-level flux-account man page with project command links (#668)
-
bank_table: addprioritycolumn (#643) -
plugin: add
Bankclass, send bank priority information to plugin (#645) -
plugin: utilize
bankpriority when calculating priority for a job (#647)
-
doc: remove
jinja2 < 3.1.0requirement (#646) -
doc: drop
sphinx < 6.0.0(#648) -
doc: update docs with bank factor (#649)
-
doc: add note about active per-queue limits (#652)
- codecov: include Python bindings in codecov report (#644)
-
bindings: remove redundant
try/exceptblocks (#625) -
.gitignore: add files to.gitignore(#627) -
list-*commands: make table output default (#626) -
calc_usage_factor(): add update of current usage when no new jobs are found in new half-life period (#630) -
update-usage: fix usage aggregation in multi-level bank hierarchies (#632) -
update-usage: add INFO-level logging (#628) -
python: improve logger format in
update-usage, create module-level logger increate-db(#633)
- doc: add
man(1)pages for project commands (#634)
- github: upgrade codecov-action to v5 (#629)
-
plugin: create label for
dependency_remove < 0(#606) -
plugin: improve
Queueclass (#609) -
delete-queue: add warning statement when deleting a queue still referenced by associations (#612) -
construct_hierarchy(): use column names (#614) -
plugin: improve how dependency logic works with new
Jobclass (#610) -
flux-account: add@CLIMaindecorator (#621) -
flux-account: standardize prefixes for error messages (#622)
-
plugin: add a new
Jobclass (#608) -
add-user: add--fairshareas an optional argument (#615) -
list-users: add--default-projectoptional argument, man page (#616) -
add-user: add--default-projectas an optional argument (#619)
-
view-*man pages: add-o/--formatoptional arg (#611) -
doc: add
man(1)pages for*-queuecommands (#613) -
add-user(1): clarify how default project is set (#618)
-
fair-share calculation: change
shares,usagetypes to more appropriate types (#585) -
plugin: return more specific error messages when updating bank attribute (#590)
-
apply_decay_factor (): fix iteration through usage periods, actuallycommitSQL statements (#594) -
mf_priority: update jj library from flux-core (#603)
-
plugin: clean up error handling, comments in
job.state.depend(#605)
-
plugin: add enforcement of max running jobs limit for a queue per-association (#491)
-
python: create new
QueueFormatterclass, refactorview_queue()to use new class (#586) -
cmd: add
list-queuescommand (#588) -
cmd: add new
list-userscommand (#597) -
view-*/list-*commands: add-o/--formatoptional argument (#600) -
bindings: add
ProjectFormattersubclass,-o/--formatoptions toview-project/list-projects(#602)
- ci: update Ubuntu version for GitHub actions (#584)
- doc: add health/sanity checklist for flux-accounting (#592)
-
python: use column names when accessing results of a query instead of row indices (#579)
-
update-fshare: change job usage variable from 32-bitinttodouble(#581)
-
doc: add man(1) page support, entries for DB administration subcommands (#538)
-
formatter: add newJobsFormatterclass, restructure view-job-records to use new class (#563)
-
view-job-records: accept multiple timestamp formats forafter-start-time,before-end-timeoptional args (#567) -
view-job-records --jobid: accept all Flux job ID formats (#566) -
t/Makefile.am: add missing line continuation (\) character (#570) -
edit-user: makefairsharean editable field for an association (#569) -
job.state.priority: remove raising exception when no aux item found (#568)
-
doc: add section on configuring queue permissions (#550)
-
python: create new
BankFormattersubclass, restructure view-bank to use new class (#525) -
view-user: create newAssociationFormattersubclass for viewing associations (#527) -
association_table: addmax_coresattribute, send information to plugin (#560) -
plugin: track the resources used across all of an association's running jobs (#561)
-
view-user: add a new--list-banksoptional argument (#479) -
doc: add fair-share documentation (#536)
-
delete-user: add--forceoption to actually remove a row from theassociation_table(#572) -
delete-bank: add--forceoption to actually remove a row from thebank_table(#573) -
doc: add note about permanently deleting rows with
--force, updateview-userexamples (#574)
-
testsuite: pull in valgrind suppression from core (#546)
-
testsuite: add longer test descriptions for some of the more complex test scenarios (#548)
- github: fix ubuntu version for
"python-format"action (#547)
-
list-banks: useAccountingFormatterclass (#524) -
add-user: make--usernameand--bankrequired arguments (#532) -
edit-user: unify reset behavior,**kwargsfor editable fields (#535)
-
view-job-records: add--bankfilter option (#533) -
doc: add example on configuring priorities for queues (#542)
- t: change which user is deleted from
association_table(#528)
- ci(mergify): upgrade configuration to current format (#537)
-
view-user: make "parsable" spelling consistent (#494) -
projects: fix unit tests for project subcommands,
--projectsreset capability (#495) -
plugin: add callback prefixes to exception messages (#499)
-
add-bank: add a check when adding a root bank (#509) -
fetch-job-records: set
max_entries=0(#516) -
view-user --parsable: improve output formatting (#514) -
flux-account.py: get rid of dictionary initialization (#512) -
__init__.py: fix formatting of constants (#521) -
view_jobs(): adjust helper function to actually return a string (#522)
-
command suite: add new
list-projectscommand (#496) -
ci: add spellchecker to flux-accounting (#504)
-
python: add
AccountingFormatterclass, SQLite utility file (#520)
-
.gitignore: add built docs, sharness test results (#511) -
t: skip t1011 if job-archive module not detected, add new tests for
fetch-job-records(#518)
-
doc: add note about manually loading plugin (#500)
-
doc: add ReadTheDocs support for flux-accounting (#501)
-
guide: add note about configuring factor weights (#505)
-
doc: add "Database Administration" section, update README to point to docs site (#506)
-
doc: reorganize top-level site, add License and Support page (#510)
-
doc: add priority equation to accounting guide (#513)
-
JobRecord: remove
usernamefrom__init__()of JobRecord object (#489) -
job.state.inactive: addreturn -1to exception (#492)
-
plugin: add project validation/annotation (#443)
-
view-job-records: add--projectfilter option (#490)
-
plugin: move
flux_respond ()to end of functions (#431) -
Makefile: remove left over compile instructions for
flux_account_shares(#482) -
configure: add
janssonas a dependency check (#484) -
doc: add example error message when creating DB after starting systemd service (#485)
-
plugin: add instance owner info to plugin (#477)
-
cmd: add
export-dbas aflux accountcommand (#486) -
cmd: add
pop-dbas aflux accountcommand (#487)
-
python: change function descriptions to follow docstring convention (#468)
-
python: convert more function descriptions to docstring format (#470)
-
src: remove
flux_account_shares.cppin favor of just using-toption withview-bank(#471) -
fetch-job-records: add integrity check for records (#475)
bank_table: add a newlist-bankscommand (#473)
-
t: move python unit tests to
t/python/directory (#462) -
python: clean job-archive interface code (#463)
-
conf.update: add missing bracket in format string (#465)
- testsuite: fix on systems with flux-accounting already installed (#467)
-
inactive_cb (): remove unused iterator variables (#457) -
plugin: initialize factor weights on plugin load (#458)
-
job archive interface: clean up a couple helper functions (#460)
- database: add the ability to remove old records from
jobstable (#459)
-
job-archive interface: wrap job usage updates into a single SQL transaction (#452)
-
database: update schema version (#453)
- plugin: add configurable priority factors via TOML
conf.update(#295)
-
testsuite: change check for specific job states (#393)
-
testsuite: replace
flux job cancel-->flux cancel(#454)
- repo: add
pkg.m4, checks for flux-core libs (#441)
-
flux-accounting: add a local job-archive (#357)
-
plugin: add
max_nodesas an attribute per-association in plugin (#437) -
repo: create a
docfolder, add flux-accounting guide (#446)
-
t: update description of sharness tests (#447)
-
testsuite: enable guest access to testexec (#449)
-
plugin: move flux-accounting-specific helper functions, remove unused ones (#427)
-
plugin: improve
add_missing_bank_info ()(#430) -
plugin: change
projects->assoc_projectsinrec_update_cb ()(#438)
-
plugin: add support for updating the bank of a pending job (#429)
-
plugin: add project information to Association information in plugin (#434)
-
plugin.query: add projects, def_project to the information returned (#435)
-
t: add
activecolumn, move sample payloads (#432) -
t1029: remove brackets from
greptests (#433)
-
plugin: improve callback for
job.validate(#415) -
plugin: move helper functions for
plugin.querycallback (#417) -
plugin: move
split_string ()out of plugin code (#418) -
plugin: improve callback for
job.new(#421) -
plugin: improve
job.update/job.update...queuecallbacks (#423) -
plugin: improve
job.state.prioritycallback (#425)
- plugin: add external
Associationclass to be used in plugin (#412)
-
plugin: keep jobs in
PRIORITYafter reprioritization (#407) -
plugin: add callback specific for validating an updated queue (#399)
- feat: developer container environment (#398)
-
edit-user: fix default values for optional args (#382) -
plugin: improve check of internal user/bank map in
job.validate(#386) -
plugin: move queue priority assignment to
job.newcallback (#388) -
view-bank: fix-toption for a sub bank with users in it (#395)
-
plugin: record bank name to jobspec in PRIORITY event (#301)
-
plugin: add queue update validation (#389)
-
load content module in rc scripts (#383)
-
ci: remove
upload-tarballstep from workflow (#387) -
testsuite: allow sharness tests to be run by hand (#392)
-
.cpp: addconfig.hinclude to source code (#366) -
.cpp: wrap"config.h", C headers inextern "C"(#368) -
python: remove empty
quotecharargument fromcsv.writerobject initialization (#372) -
python: rename
rowsvariable to something more descriptive (#374) -
plugin: check for
FLUX_JOB_STATE_NEWinvalidate_cb ()(#378)
-
build: add
make debtarget for test packaging (#363) -
t: reorganize
t1007-flux-account.tinto multiple sharness tests (#367) -
docker: transition
bioniccontainer tojammy(#369) -
t: add valgrind folder to flux-accounting (#373)
-
ci: update github actions
main.ymlfile (#375)
- database: update DB schema version (#361)
-
bank_table: add new job_usage column (#359)
-
view-bank: improve-toption (#359)
- t: add new Python test directory in
t/(#358)
- plugin: improve handling of submitted jobs based on data presence in plugin (#347)
-
flux-accounting service: make certain commands accessible to all users (#330)
-
flux-accounting service: change BindTo to BindsTo (#341)
-
view-user: improve formatting of output of command (#342) -
update-db: fix SQLite statement when updating a table with no primary key (#343)
- replace
flux miniusage (#344)
- flux-accounting service: change Requires to BindTo (#338)
-
bindings: raise error to caller (#327, #328, #329)
-
plugin: clear queues on flux-accounting DB update (#334)
- plugin: rework increment/decrement of running and active job counts for associations (#325)
-
edit-user: make "userid" an editable field (#319) -
view-*commands: raiseValueErrorwhen item cannot be found in flux-accounting DB (#320) -
view-bank: re-add-toption to command (#322)
view-job-records: fix arguments passed in viaflux-account-service.py(#316)
-
Add new service for
flux accountcommands (#308) -
Add systemd unit file for flux-accounting service (#315)
- Add ability to edit the parent bank of a bank (#299)
-
Do not assume queues default to stopped (#302)
-
Stop all queues with
--alloption (#303)
- Change
update-dbcommand to create temporary database in/tmpinstead of current working directory (#288)
-
Add additional exception messages to Python commands (#267)
-
Improve dependency message for running jobs limit (#269)
-
Clean up user subcommand functions (#271)
-
Clean up bank subcommand functions (#275)
-
Disable queue validation in multi-factor priority plugin on unknown queue, no configured "default" queue after flux-core queue changes (#281)
-
Change default values of "DNE" entry to allow multiple jobs to be submitted (#286)
-
Change install location of multi-factor priority plugin (#287)
-
Add database schema version to flux-accounting DB (#274)
-
Add automatic DB upgrade to
flux account-priority-updatecommand if flux-accounting database is out of date (#274)
- Add new
plugin.querycallback to multi-factor priority plugin which returns internal information about users and banks, active and running job counts, and any held jobs at the time of the query (#264)
- Fix
update-dbcommand to provide clearer exception messages when the command fails to update a flux-accounting database (#258)
- Add new tests for the
update-dbcommand for updating old versions of a flux-accounting database (#258)
-
Fix
update-dbcommand to account for deleted columns when updating a flux-accounting database (#252) -
Improve error message clarity from sqlite3.connect when running the
update-dbcommand (#248)
- Add ability to disable a user/bank combo in the multi-factor priority plugin that prevents a user from submitting and running jobs (#254)
- Disable requirement for a
defaultqueue (#237)
-
Add a new
max_nodescolumn to theassociation_tablewhich represents the max number of nodes a user/bank combo can have across all of their running jobs (#235) -
Add a sharness test for calculating job priorities of multiple users with different
--urgencyvalues (#236) -
Add a new
export-dbcommand which extracts information from both theassociation_tableandbank_tableinto.csvfiles for processing (#243) -
Add a new
update-dbcommand which adds any new tables and/or adds any new columns to existing tables in a flux-accounting database (#244)
- Fix memory corruption due to use-after-free of the "DNE" bank entry (#233)
- Add queue priority to job priority calculation (#207)
-
Fix incorrect job usage calculation for users who belong to multiple banks (#219)
-
Update the
pop-dbcommand to include themax_active_jobs,max_running_jobslimits defined in theassociation_table(#224) -
Remove the unused ‘deleted’ column from the
association_tablein the flux-accounting DB (#224) -
Fix the default value for the
--queuesoptional argument in theedit-usercommand (#225)
-
Add an
rc1script that populates multi-factor priority plugin with flux-accounting DB information on instance startup or restart (#223) -
Allow multi-factor priority plugin to be loaded and hold jobs without user/bank information (#227)
-
Fix incorrect listing of column names when printing table information in the flux-accounting database (#203)
-
Fix
TypeErrorwhen not specifying a value for an optional argument for theupdate-usagecommand (#209) -
Fix incorrect parsing of the
count_ranks()helper function when updating job usage values (#211)
-
Add a new
max_active_jobslimit for user/bank combos in the multi-factor priority plugin (#201) -
Add a new distcheck builder to flux-accounting CI (#206)
-
Improve sharness tests to use
flux accountcommands directly in tests (#180) -
Change positional and optional arguments in
edit-usercommand to align with otheredit-*commands (#181) -
Fix bug in
view-userpreventing the ability to view more than one row if a user belonged to more than one bank (#187) -
Remove outdated
admin_levelcolumn from association_table in flux-accounting database (#188) -
Fix incorrect listing of association_table headers in the
view-usercommand (#193) -
Fix
UNIQUE constraintfailure when re-adding a previously deleted user to the same bank in the flux-accounting database (#193) -
Convert the
qosargument into positional arguments for both theview-qosandedit-qoscommands (#193)
-
Add new enforcement policy in multi-factor priority plugin to only count running jobs towards an "active" jobs counter (#177)
-
Add section to top-level README on flux-accounting database permissions (#188)
-
Add new optional arguments to
view-bankcommand to view sub bank hierarchy trees or users belonging to a specific bank (#194) -
Add bulk database populate tool to upload multiple user or bank rows at one time via
.csvfile (#195)
-
Improve bulk update script by reducing number of sent payloads to just one payload containing all required data needed by multi-factor priority plugin (#167)
-
Drop
ax_python_devel.m4and adjustconfigure.acsince flux-accounting does not usePYTHON_CFLAGSorPYTHON_LIBSand rejects python3.10.0as too old (#173) -
Add LLNL code release number to flux-accounting (#175)
- Add support for defining, configuring, and editing queues and its various limits within the flux-accounting database (#176)
-
Replace the "strict" merge mode with queue+rebase in Mergify (#158)
-
Add missing installation of the Python bulk update script that sends updated database information to the priority plugin (#162)
-
Change names of all automatic update scripts to fall under one prefix called "account" (#162)
-
Change the default DB path for all flux-accounting subcommands (#170)
-
Remove the positional argument for the
create-dbsubcommand (#170) -
Unify the optional database path arguments for all of the
flux accountcommands (#171)
- Add new instructions to the top-level README on setting up the flux-accounting database, loading the priority plugin, and configuring the automatic update scripts (#157)
-
Fix bug in add-user where wrong number of arguments were passed to function (#140)
-
Fix bug in edit-user to ensure an edit made in one user/bank row was only made in just that one row instead of in multiple rows in the flux-accounting database (#140)
-
Add a new front-end update script that will re-calculate users' fairshare values and update them in the flux-accounting database (#138)
-
Add new Quality of Service table in the flux-accounting database, which will hold Quality of Services and their associated priorities (#143)
-
Add new sharness tests for Python subcommands (#140)
-
Remove pandas dependency from flux-accounting, which was required to build/install (#144)
-
Fix bug where users couldn't be added due to a broken function header (#140)
-
Fix bug where a bank's shares could not be edited (#140)
-
Add a new multi-factor priority plugin that will calculate and push a user's job priority using multiple factors (#122)
-
Add a new external service that grabs flux-accounting database information and pushes it to the multi-factor priority plugin (#122)
-
Add a max jobs limit to the priority plugin that will enforce a limit of active jobs on a user/bank combination in the flux-accounting database (#131)
-
Add a new STDOUT writer class to write user/bank information from a flux-accounting database to STDOUT (#120)
-
Updated headers of source files in the
fairnessdirectory (#113) -
Fixed module/dependency installation strategy of flux-accounting on the
bionicDocker image (#114) -
Fixed bug where old job usage values incorrectly included old factors when applying a decay value (#118)
-
Fixed bug where the all job usage factors were incorrectly updated multiple times in one half-life period (#118)
-
Fixed bug where a historical job usage value was updated even in the case where no new jobs were found in the current half-life period (#118)
-
Fixed bug where the last seen job timestamp was reset to 0 if no new jobs were found for a user (#118)
-
Added a new
fairsharefield to theassociation_tablein a flux-accounting database (#116) -
Added a new
writerclass which will update associations with up-to-date fairshare information (#116)- Added a subclass
data_writer_dbwhich will write fairshare information to a flux-accounting SQLite database
- Added a subclass
-
Added a new subcommand to
flux accountthat calculates and updates historical job usage values for every association in the flux-accounting database (#118)
-
Fixed
ModuleNotFounderror when running Python unit tests on Python3.6(#106) -
Removed shebang line from flux-account.py to prevent Python version mismatch errors (#101)
-
Added a new
readerclass which will read flux-accounting information and load it to aweighted_treeobject (#103)- Added a subclass
data_reader_dbwhich will read and load information from a flux-accounting SQLite database
- Added a subclass
-
Added a new flux subcommand:
flux shares, which will output a flux-accounting database hierarchy containing user/bank shares and usage information (#109)
-
Unused variables and imports removed, license in
src/fairness/changed to LGPL (#90) -
Behavior of
delete-user,delete-bankchanged to keep job history of a user after they are removed from the flux-accounting DB (#92) -
bankargument added to thedelete-usersubcommand (#95)
-
unittest.mock()integrated with job-archive interface unit tests (#93) -
flux-accounting database can be loaded into weighted tree library to generate fairshare values for users (#97)
-
print-hierarchy's error output more graceful when there are no accounts (#62) -
association_table'suser_namefield changed tousername(#67) -
accounting_cli.py's
accountoption changed tobank(#70) -
variables in print_hierarchy.cpp moved from
globalscope (#71) -
Python code converted over to use autotools, TAP, and sharness (#73)
-
print-hierarchyadded as a C++ implementation to weighted tree lib (#64) -
delete-bankrecursively deletes sub banks and associations when a parent bank is deleted (#78) -
calc_usage_factor()calculates a user's historical job usage value based on their job history (#79)
-
view-job-recordssubcommand parameters adjusted to be unpacked as a dictionary (#55) -
Move
view_job_records()and its helper functions into its own Python module (#57)
-
Add a library that provides a weighted tree-based fairness (#65)
-
Add autogen, automake tools to flux-accounting repo (#65)
-
bank_table's primary key is now a fixed type (#42) -
bank_table's subcommands no longer impose constraints on values of shares (#44) -
print-hierarchy's format improved to represent a bank and user hierarchy (#51)
This release adds a new table to the flux-accounting database and a front end to flux-core's job-archive.
-
Add a new table
bank_tablethat stores bank information for users to charge jobs against. -
Add a front-end interface to flux-core's job-archive to fetch job record information and sort it with customizable parameters, such as by username, before or after a specific time, or with a specific job ID.
Initial release.
-
Create an accounting database which stores user account information. Can interact with database through SQLite shell or through a command line interface to add and remove users, edit account values, and view account information.
-
Add Makefile to allow flux-accounting to be installed alongside flux-core so that flux-accounting commands can be picked up by Flux's command driver.