summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* NEWS.md: update for 0.4 v0.4Leah Neukirchen2021-03-151-0/+7
|
* nq.1: document NQDONEDIRLeah Neukirchen2021-03-131-2/+14
|
* nq: simplify O_DIRECTORY usageLeah Neukirchen2021-03-131-8/+4
|
* nq: initialize fd with -1 instead of a possible valid valueLeah Neukirchen2021-03-131-1/+1
|
* nq: add support for a $NQDONEDIRLeah Neukirchen2021-03-131-4/+30
|
* fq: use shared locks to avoid holding exclusive locks for a split secondDuncan Overbruck2021-03-131-2/+2
|
* nq: use shared locks when waiting for other lockfilesDuncan Overbruck2021-03-131-4/+4
| | | | | | | | The nq process itself will hold an exclusive lock on its lock file, the other nq processes will now use a shared lock to test if the previous queue item is still locked. By using shared locks, multiple nq processes testing the same shared lock don't interfere with other nq processes checking for locks.
* nq: check d_name fits into newestlocked (our filenames always will)Leah Neukirchen2021-03-131-1/+2
|
* nq: revamp waiting loop to avoid busy loops in contested casesLeah Neukirchen2021-03-131-18/+27
| | | | | | | | | | | | | | | | | As reported in #37, the current rewind-loop has the issue of waiting for a lock on the first file that is locked, but it could be detected as being locked by another process that also just wants to check this file. As both processes rewind the dir and retry in this case, this can yield a busy loop. Instead, find the newest locked file and wait for that. This should result in most nq processes waiting for different locks, so this kind of synchonization cannot appear. In theory, removing the rewinddir would be enough, as later nq runs should not result in enqueuing earlier jobs, but it's better to be safe and check there are no more locked files before we launch our job.
* fq: fix fd leakLeah Neukirchen2021-02-281-1/+3
| | | | Thanks to @duncaen for reporting.
* README.md: fix minor 'manager'->'manage' typoTom2021-02-041-1/+1
| | | | Closes: #34 [via git-merge-pr]
* fq.1: document kqueue usageLeah Neukirchen2021-01-311-1/+4
|
* README: add basic comparison to task-spoolerAlexandre Rossi2021-01-301-3/+8
| | | | Closes: #32 [via git-merge-pr]
* fq: add kevent/kqueue supportPawel Biernacki2021-01-301-1/+41
| | | | Closes: #29 [via git-merge-pr]
* README.md: tweaksLeah Neukirchen2021-01-271-4/+4
|
* README.md: add comparison to `at` and `batch`Leah Neukirchen2021-01-271-0/+17
|
* NEWS.md: update for 0.3.1 v0.3.1Leah Neukirchen2018-03-071-0/+4
|
* nq: don't define _XOPEN_SOURCELeah Neukirchen2018-03-071-2/+0
| | | | | This hides LOCK_* on FreeBSD and OpenBSD, and is not needed anyway. Closes #26.
* NEWS.md: update for 0.3 v0.3Leah Neukirchen2018-03-061-1/+3
|
* nq: write_execline: avoid unnecessary quotingLeah Neukirchen2018-03-021-7/+17
|
* nq: fix -w and -t without argumentsLeah Neukirchen2018-01-311-1/+1
|
* nq: properly check for empty command linesLeah Neukirchen2018-01-311-1/+1
| | | | | | | `nq -q` could trigger a segfault before. Found by Leonardo Taccari. Fixes #25.
* nq: add -c to clean job file when process succeededLeah Neukirchen2018-01-183-5/+22
|
* add NEWS.md v0.2.2Leah Neukirchen2017-12-211-0/+18
|
* fq: pass full path to lock file to inotify_add_watchSebastian Reuße2017-12-141-1/+8
| | | | | | | | When NQDIR is set, we cannot expect the lock files to be found under the working directory. Fixes #22 Closes: #23 [via git-merge-pr]
* COPYING: fix address reallyLeah Neukirchen2017-12-051-1/+1
|
* COPYING: fix addressLeah Neukirchen2017-11-241-4/+2
|
* README.md: add NetBSD 7.0.2.Leah Neukirchen2017-10-131-1/+1
|
* styleLeah Neukirchen2017-08-312-3/+3
|
* fq: fix qflag initialization v0.2.1Leah Neukirchen2017-04-271-1/+1
| | | | Fixes #21.
* Leahize v0.2Leah Neukirchen2017-04-267-9/+7
|
* fq: add -n to not waitChristian Neukirchen2016-07-242-3/+13
|
* README.md: nq works on SmartOS nowChristian Neukirchen2016-03-211-1/+2
|
* nq: add dprintf stub for SolarisChristian Neukirchen2016-03-211-0/+22
|
* nq, fq: fall back on when O_DIRECTORY is not definedChristian Neukirchen2016-03-212-1/+11
|
* nq.1: manpage tweaksChristian Neukirchen2016-01-041-4/+6
|
* _fq: rename to _nq for consistency.Christian Neukirchen2015-09-201-0/+0
|
* README.md: explain why flock is usedChristian Neukirchen2015-09-201-1/+3
|
* tests: try to sleep out some race conditions in the test suite.Christian Neukirchen2015-09-041-0/+2
|
* add COPYING v0.1Christian Neukirchen2015-08-281-0/+8
|
* nq.1: add examplesChristian Neukirchen2015-08-281-0/+45
|
* fq: styleChristian Neukirchen2015-08-281-3/+3
|
* fq: open dirfd with O_DIRECTORY to fail earlyChristian Neukirchen2015-08-281-2/+4
|
* nq: open dirfd with O_DIRECTORY to fail earlyChristian Neukirchen2015-08-281-1/+1
|
* nq: mkdir $NQDIRChristian Neukirchen2015-08-281-0/+7
|
* fq: style fixesChristian Neukirchen2015-08-271-2/+2
|
* README.md: clarify what happens when gettimeofday runs backwardChristian Neukirchen2015-08-271-1/+2
|
* README.md: add some examplesChristian Neukirchen2015-08-271-0/+34
|
* nq: error handling for dup2Christian Neukirchen2015-08-271-2/+5
|
* nq: fsync after renameChristian Neukirchen2015-08-271-0/+3
| | | | | For details, see https://groups.google.com/forum/#!topic/comp.unix.programmer/AM2V83RCOVE