<feed xmlns='http://www.w3.org/2005/Atom'>
<title>WebStat analyser/src/ingestor.hpp, branch webstat-0.5</title>
<subtitle>WebStat web site access analyser</subtitle>
<id>http://git.randomdan.homeip.net/repo/webstat/atom?h=webstat-0.5</id>
<link rel='self' href='http://git.randomdan.homeip.net/repo/webstat/atom?h=webstat-0.5'/>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/'/>
<updated>2026-05-07T14:41:19Z</updated>
<entry>
<title>Handle completed curl operations in a job</title>
<updated>2026-05-07T14:41:19Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan.goodliffe@octal.co.uk</email>
</author>
<published>2026-05-07T14:41:19Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=157614349f5f4c2387e0a970a4ca3ddaeaa23446'/>
<id>urn:sha1:157614349f5f4c2387e0a970a4ca3ddaeaa23446</id>
<content type='text'>
Removes the need to block the main thread from reading stdin while
performing post curl operation actions, such as updating user agent
details.
</content>
</entry>
<entry>
<title>Add support for conditional job execution</title>
<updated>2026-05-07T14:40:11Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan.goodliffe@octal.co.uk</email>
</author>
<published>2026-05-07T14:40:11Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=cbb2035fd33ba84fea56c7a7223c563b925e8649'/>
<id>urn:sha1:cbb2035fd33ba84fea56c7a7223c563b925e8649</id>
<content type='text'>
Performs a check before launching a job thread, rather than just having
it exit immediately.
</content>
</entry>
<entry>
<title>Switch to std::map for existingEntities cache</title>
<updated>2026-05-05T09:00:45Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan.goodliffe@octal.co.uk</email>
</author>
<published>2026-05-05T09:00:45Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=b7346649926b4357b27aa81238eb34cebe39671b'/>
<id>urn:sha1:b7346649926b4357b27aa81238eb34cebe39671b</id>
<content type='text'>
Insertion cost of flat_map too high when map grows large.
</content>
</entry>
<entry>
<title>Start curl operations from any thread</title>
<updated>2026-05-02T22:13:08Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan@randomdan.homeip.net</email>
</author>
<published>2026-05-02T22:13:08Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=af422b45c7fb406dae35dc3f811e50d92e854f58'/>
<id>urn:sha1:af422b45c7fb406dae35dc3f811e50d92e854f58</id>
<content type='text'>
Ingest is now background only, so don't limit where they're started
from. Adds some unfortunate locking around the curl maps.
</content>
</entry>
<entry>
<title>Ingest log lines in a background thread</title>
<updated>2026-05-02T17:58:21Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan@randomdan.homeip.net</email>
</author>
<published>2026-05-02T17:58:21Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=4675ab65ea5e807e0d457845a0ca84edcf1262c9'/>
<id>urn:sha1:4675ab65ea5e807e0d457845a0ca84edcf1262c9</id>
<content type='text'>
This prevents halting reading input during data insertion.
</content>
</entry>
<entry>
<title>Rename jobIngestParkedLines to jobReadParkedLines</title>
<updated>2026-05-01T16:13:29Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan.goodliffe@octal.co.uk</email>
</author>
<published>2026-05-01T16:13:29Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=5c0206f48dc7f90009629d0a74bdc1dd6b4f67ea'/>
<id>urn:sha1:5c0206f48dc7f90009629d0a74bdc1dd6b4f67ea</id>
<content type='text'>
Actual ingest is performed by the main process, jobReadParkedLines just
reads the park file and adds it to the queue.
</content>
</entry>
<entry>
<title>Append unparked lines to queue in finalise function</title>
<updated>2026-05-01T16:01:56Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan.goodliffe@octal.co.uk</email>
</author>
<published>2026-05-01T15:58:01Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=0e768a00fab74818533458b5b40c84556b2137e0'/>
<id>urn:sha1:0e768a00fab74818533458b5b40c84556b2137e0</id>
<content type='text'>
Fixes issue where queuedLines would be accessed from background thread.
</content>
</entry>
<entry>
<title>Return a callable from jobs</title>
<updated>2026-05-01T14:31:02Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan.goodliffe@octal.co.uk</email>
</author>
<published>2026-05-01T14:31:02Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=ed3598ac6f77f62b0c4fe32d4dab05784e5fa51d'/>
<id>urn:sha1:ed3598ac6f77f62b0c4fe32d4dab05784e5fa51d</id>
<content type='text'>
Allows safely running finalisation code in the main thread if required.
</content>
</entry>
<entry>
<title>Explicitly wait for and finalize any running jobs on exit</title>
<updated>2026-05-01T10:12:39Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan.goodliffe@octal.co.uk</email>
</author>
<published>2026-05-01T10:12:39Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=917487a6de80bf5e81eebcdbbf48bcf9763262fa'/>
<id>urn:sha1:917487a6de80bf5e81eebcdbbf48bcf9763262fa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Limit the number lines stored at once</title>
<updated>2026-05-01T09:32:48Z</updated>
<author>
<name>Dan Goodliffe</name>
<email>dan.goodliffe@octal.co.uk</email>
</author>
<published>2026-05-01T09:32:48Z</published>
<link rel='alternate' type='text/html' href='http://git.randomdan.homeip.net/repo/webstat/commit/?id=1c929e46d8e7b14a74f80a21b5f30c9abbee410f'/>
<id>urn:sha1:1c929e46d8e7b14a74f80a21b5f30c9abbee410f</id>
<content type='text'>
Limits the number lines inserted per transactions, and the number of
transactions before returning to reading input.
Prevents long running transactions in the case when queued lines has
grown in size.
</content>
</entry>
</feed>
