]>
mj.ucw.cz Git - libucw.git/log
Martin Mares [Thu, 9 Feb 2012 22:36:36 +0000 (23:36 +0100)]
Doc: Mention several undocumented modules
Martin Mares [Thu, 9 Feb 2012 22:33:00 +0000 (23:33 +0100)]
Moved memory allocation functions together and document them
Martin Mares [Thu, 9 Feb 2012 22:29:52 +0000 (23:29 +0100)]
The `prefetch' module has been removed.
In recent years, GCC builtin_prefetch() is much more useful.
Martin Mares [Thu, 9 Feb 2012 22:29:10 +0000 (23:29 +0100)]
The rest of sighandler separation
Martin Mares [Thu, 9 Feb 2012 22:24:07 +0000 (23:24 +0100)]
Separated out sighandler module
For years, it was used only in lizard-safe and its use makes
signal handling even more complicated than it's usual.
Scheduled for removal, will replace it by a lizard-specific hack.
Martin Mares [Thu, 9 Feb 2012 22:16:51 +0000 (23:16 +0100)]
Moved process-related functions to ucw/process.h
Martin Mares [Thu, 9 Feb 2012 22:12:08 +0000 (23:12 +0100)]
io.h: Fixed guard macro
Martin Mares [Thu, 9 Feb 2012 22:09:46 +0000 (23:09 +0100)]
More modules moved to io.h and renamed to io-*.c
This includes carefulio, mmap, file_size() and sync.
Martin Mares [Thu, 9 Feb 2012 22:02:17 +0000 (23:02 +0100)]
Moved ucw/lfs.h to ucw/io.h
More I/O functions will follow.
Martin Mares [Thu, 9 Feb 2012 21:54:43 +0000 (22:54 +0100)]
The `randomkey' module has been removed.
Obsolete, no real use in years.
Martin Mares [Thu, 9 Feb 2012 21:48:31 +0000 (22:48 +0100)]
The `profile' module has been removed
It was obsolete and I do not know of any use in last 5 years.
Martin Mares [Thu, 9 Feb 2012 21:24:54 +0000 (22:24 +0100)]
Main: hook_add() is guaranteed to reschedule the hook
Martin Mares [Thu, 9 Feb 2012 19:20:34 +0000 (20:20 +0100)]
Main: Removing an already removed event is always safe.
Also adding an already added hook is always safe. For other event
types, we still refuse repeated adds.
Pavel Charvat [Wed, 8 Feb 2012 13:58:46 +0000 (14:58 +0100)]
Added consts to functions for matching of prefixes and suffixes.
Martin Mares [Tue, 7 Feb 2012 09:10:11 +0000 (10:10 +0100)]
Main: Fixed miscalculated memory allocation
Martin Mares [Fri, 27 Jan 2012 14:05:47 +0000 (15:05 +0100)]
strtonum: str_to_<signed> now implicitly allows signs
Martin Mares [Sat, 7 Jan 2012 14:25:47 +0000 (15:25 +0100)]
String: Added str_starts_with() and str_ends_with()
Martin Mares [Sat, 7 Jan 2012 13:33:52 +0000 (14:33 +0100)]
Logging: Use log_set_default_stream().
Martin Mares [Sat, 7 Jan 2012 13:33:43 +0000 (14:33 +0100)]
Logging: Added log_set_default_stream()
Martin Mares [Thu, 5 Jan 2012 17:35:39 +0000 (18:35 +0100)]
<ucw/sha1.h> is a part of the public API, do not forget to install it
Pavel Charvat [Mon, 5 Dec 2011 10:21:42 +0000 (11:21 +0100)]
mempool: Fixed a memory leak in mp_pop().
Martin Mares [Tue, 22 Nov 2011 16:15:09 +0000 (17:15 +0100)]
UCW::CGI: Updated copyright
Martin Mares [Tue, 22 Nov 2011 16:14:18 +0000 (17:14 +0100)]
UCW::CGI: Use "//" instead of "||" where appropriate
Martin Mares [Tue, 22 Nov 2011 16:13:32 +0000 (17:13 +0100)]
UCW::CGI: Report all errors by proper HTTP status codes
All calls to die have been replaced by returning a proper HTTP status
code. (A sole exception is if we fail, because we were not run as a CGI
script at all.)
Also, the set of supported HTTP methods now includes HEAD.
Martin Mares [Thu, 20 Oct 2011 07:16:53 +0000 (09:16 +0200)]
log output: Fix of a bug introduced during cleanups
Martin Mares [Tue, 18 Oct 2011 16:17:15 +0000 (18:17 +0200)]
logoutput: A few cleanups
Martin Mares [Tue, 18 Oct 2011 16:12:16 +0000 (18:12 +0200)]
Added a utility for logging of program output
Contributed by Tomas Ebenlendr <ebik@ucw.cz>.
Martin Mares [Sun, 25 Sep 2011 12:03:38 +0000 (14:03 +0200)]
Merge branch 'dev-mainloop' of ssh://git.ucw.cz/projects/libucw/GIT/libucw into dev-mainloop
Martin Mares [Sun, 25 Sep 2011 12:03:28 +0000 (14:03 +0200)]
TODO: A few remarks...
Martin Mares [Wed, 14 Sep 2011 13:19:58 +0000 (15:19 +0200)]
Main recio: Killed an ASSERT, which triggered under legitimate conditions
Martin Mares [Fri, 19 Aug 2011 15:17:45 +0000 (17:17 +0200)]
Let setproctitle() recalculate program_invocation_name
Otherwise, syslog() and other functions which try to log the name
of the current programs are confused.
Martin Mares [Fri, 19 Aug 2011 10:38:59 +0000 (12:38 +0200)]
Main: Complete the fix in HEAD^^
Martin Mares [Fri, 19 Aug 2011 10:38:11 +0000 (12:38 +0200)]
Main: Better reporting of fio errors in main-test
Martin Mares [Fri, 19 Aug 2011 10:29:34 +0000 (12:29 +0200)]
Main: Clean up handling of poll flags
- We no longer include POLLERR and POLLHUP in the set of requested
events. The standard (SUSv2) says they will be delivered regardless
of the event mask chosen.
- POLLERR is an output event, so we call only the write handler.
- POLLHUP is documented as an output event, but it sometimes signals
events which we would like to process by the input handler. The
situations when POLLHUP is generated include:
* on reading end of a pipe when the writing end has been closed
-> we would like to call read handler and get EOF (write handler
does not exist)
* on writing end of a pipe when the reading end has been closed
-> we would like to call write handler (read handler does not
exist)
* on a R/W socket when the other end has been closed -> better
call read handler to get an EOF
* on a tty which has been hanged up -> probably the same as a R/W
socket
We have therefore decided to call the read handler, but fall back to
the write handler if the read handler does not exist.
- When a handler decided to remove itself (but keep the main_file),
we could have entered an infinite loop. This no longer happens.
Martin Mares [Mon, 15 Aug 2011 11:27:50 +0000 (13:27 +0200)]
UCW::CGI: "; boundary=..." is also valid syntax
Martin Mares [Mon, 15 Aug 2011 08:27:54 +0000 (10:27 +0200)]
UCW::CGI: Cosmetic changes in capitalization of HTTP headers
Martin Mares [Sun, 31 Jul 2011 15:15:37 +0000 (17:15 +0200)]
fb-socket: Support shared fd's
Martin Mares [Sun, 31 Jul 2011 12:55:41 +0000 (14:55 +0200)]
Doc: Updated release notes
Martin Mares [Sun, 31 Jul 2011 12:55:17 +0000 (14:55 +0200)]
UCW::CGI: Implemented UTF-8 mode (compatible with `use utf8')
Martin Mares [Sun, 31 Jul 2011 12:44:25 +0000 (14:44 +0200)]
Merge branch 'dev-mainloop'
Martin Mares [Sun, 31 Jul 2011 12:42:59 +0000 (14:42 +0200)]
Main recio: Constants seem to be OK, deleted FIXME
Martin Mares [Thu, 9 Jun 2011 16:16:33 +0000 (18:16 +0200)]
Main: Introduce functions for telling whether an object is active
This is an useful idiom and it helps avoid calling clist_is_linked()
on private parts of the objects.
Martin Mares [Thu, 9 Jun 2011 16:04:26 +0000 (18:04 +0200)]
Main recio: Allow rec_io_(start|stop)_read from the read_handler
This involves rescanning the read buffer on rec_io_start_read()
as there might be leftover data from previous invokations of the
read_handler.
However, we have to be careful to avoid arbitrarily deep recursion
of various handlers. We do that by deferring the actual start of
reading to a main_hook.
Martin Mares [Thu, 9 Jun 2011 15:15:08 +0000 (17:15 +0200)]
Main: Moved hooks before recio
Martin Mares [Thu, 9 Jun 2011 15:12:22 +0000 (17:12 +0200)]
Main record-based I/O: documentation
Martin Mares [Thu, 9 Jun 2011 14:51:15 +0000 (16:51 +0200)]
Main record-based I/O: allow freeing of recio from read handlers
Pavel Charvat [Mon, 6 Jun 2011 08:49:31 +0000 (10:49 +0200)]
Removed invalid usage on .NOTPARALLEL keyword in makefiles.
Pavel Charvat [Wed, 18 May 2011 09:46:18 +0000 (11:46 +0200)]
Whitespace cleanup.
Martin Mares [Sun, 1 May 2011 23:49:59 +0000 (01:49 +0200)]
Main record I/O: Flow control and a few bits of documentation
Martin Mares [Sun, 1 May 2011 23:23:42 +0000 (01:23 +0200)]
Main: Preliminary implementation of record-based I/O
Martin Mares [Tue, 19 Apr 2011 13:55:41 +0000 (15:55 +0200)]
Docs: Let eltpool and mempool refer to the corresponding resource functions
Martin Mares [Tue, 19 Apr 2011 13:47:34 +0000 (15:47 +0200)]
Resources: Renamed respool.* -> resource.*
Martin Mares [Tue, 19 Apr 2011 13:44:14 +0000 (15:44 +0200)]
Doc: Note that gary.h is undocumented
Martin Mares [Tue, 19 Apr 2011 13:42:58 +0000 (15:42 +0200)]
Resources: Added eltpool class
Martin Mares [Tue, 19 Apr 2011 13:42:41 +0000 (15:42 +0200)]
Eltpool: Fixed a doc typo
Martin Mares [Tue, 19 Apr 2011 13:39:13 +0000 (15:39 +0200)]
Resources: Added mempool class
Martin Mares [Tue, 19 Apr 2011 13:29:58 +0000 (15:29 +0200)]
Fastbufs: More exceptions
Martin Mares [Tue, 19 Apr 2011 13:20:21 +0000 (15:20 +0200)]
Trans: Document which modules have to be resourcified
Martin Mares [Tue, 19 Apr 2011 13:16:33 +0000 (15:16 +0200)]
Resources: res_new() requires an active pool
The old behavior of returning NULL if called without an active pool
caused more fuss than it saved.
Martin Mares [Tue, 19 Apr 2011 13:14:24 +0000 (15:14 +0200)]
Trans: Documented naming of exceptions
Martin Mares [Tue, 19 Apr 2011 13:07:15 +0000 (15:07 +0200)]
Fastbufs: Clean up exception handling
All exceptions now reside in the "ucw.fb" namespace, bthrow() takes
care of adding this prefix.
"ucw.fb.eof" is used systematically, even at places when a read error
was reported previously.
Exceptions have been documented.
Martin Mares [Tue, 19 Apr 2011 12:46:26 +0000 (14:46 +0200)]
Fastbufs are not tied to resources automatically any longer
Explicit tying by fb_tie() should be used instead.
Martin Mares [Tue, 19 Apr 2011 12:44:46 +0000 (14:44 +0200)]
Resources: Allow res_free(NULL) and res_detach(NULL)
Martin Mares [Tue, 19 Apr 2011 12:34:44 +0000 (14:34 +0200)]
Trans: trans_commit() calls rp_commit()
Martin Mares [Tue, 19 Apr 2011 12:33:17 +0000 (14:33 +0200)]
Resources: Document that resource class callbacks are optional
Martin Mares [Tue, 19 Apr 2011 12:32:05 +0000 (14:32 +0200)]
Implemented temporary resources
Martin Mares [Mon, 18 Apr 2011 21:05:21 +0000 (23:05 +0200)]
Documented ucw/string.h.
Martin Mares [Mon, 18 Apr 2011 20:48:21 +0000 (22:48 +0200)]
Added string functions for matching of prefixes and suffixes
Martin Mares [Mon, 18 Apr 2011 19:51:06 +0000 (21:51 +0200)]
fb-grow: Updated documentation, so that our doc tools can digest it
Pavel Charvat [Mon, 18 Apr 2011 13:08:37 +0000 (15:08 +0200)]
fb-grow: Fixed a stupid typo.
Pavel Charvat [Mon, 18 Apr 2011 12:51:15 +0000 (14:51 +0200)]
fb-grow: Renamed fbgrow_read_all() to fbgrow_get_buf().
Pavel Charvat [Mon, 18 Apr 2011 11:34:08 +0000 (13:34 +0200)]
fb-grow: Added a function to read the whole buffer anytime.
Martin Mares [Sun, 17 Apr 2011 19:00:33 +0000 (21:00 +0200)]
Trans: more documentation
Martin Mares [Sun, 17 Apr 2011 18:38:26 +0000 (20:38 +0200)]
Resource pools documented
Martin Mares [Sun, 17 Apr 2011 17:24:04 +0000 (19:24 +0200)]
Trans: Fixed a couple of bugs in the previous commit
Martin Mares [Sun, 17 Apr 2011 17:06:54 +0000 (19:06 +0200)]
Trans: New semantics of exceptions
Changed exception propagation rules according to the new semantics
documented in ucw/doc/trans.txt, which is based on transaction folding.
We avoid the (partially implemented) exception pool altogether, all
exceptions are just allocated from the pool of the current transaction,
and clever re-throwing rules make the pools last as long as they should.
Also, the current exception is kept track of in the current transaction
instead of the thread context.
Martin Mares [Sun, 17 Apr 2011 16:26:37 +0000 (18:26 +0200)]
Trans: First bits of documentation
I have tried to document the complete logic of transactions,
including memory management details. It is however still far from
a complete documentation and the AsciiDoc formatting is also somewhat
obscure at the moment.
Martin Mares [Sun, 17 Apr 2011 15:21:53 +0000 (17:21 +0200)]
Resources: Implemented subpools
I also had to extend the pool/resource dumping functions, so that
they can print complex structures. All functions pass the amount
of indent to apply and the resource->dump callback is expected
to include a `\n' after its output.
Martin Mares [Sun, 17 Apr 2011 15:16:38 +0000 (17:16 +0200)]
Trans: trans_open_rp() removed
It did never make much sense, since the resource pool is automatically
destroyed when the transaction is over.
Martin Mares [Sun, 17 Apr 2011 11:15:12 +0000 (13:15 +0200)]
Resources: Simplified use of fb_tie()
Martin Mares [Sun, 17 Apr 2011 10:58:00 +0000 (12:58 +0200)]
Resource pools: use LIKE_MALLOC attribute
Pavel Charvat [Tue, 29 Mar 2011 13:54:56 +0000 (15:54 +0200)]
Automatic tests can't run in parallel.
Pavel Charvat [Thu, 13 Nov 2008 14:21:44 +0000 (15:21 +0100)]
* Fixed several bugs in fastbufs. * Implemented vdie(). * fb-grow can be allocated from mempool... also added support for mixed R/W access
Pavel Charvat [Wed, 29 Oct 2008 12:30:59 +0000 (13:30 +0100)]
Fixes in fb-mmap.
Pavel Charvat [Wed, 29 Oct 2008 12:21:57 +0000 (13:21 +0100)]
Fixed fb-atomic.
Pavel Charvat [Wed, 29 Oct 2008 12:10:19 +0000 (13:10 +0100)]
Implemented first bits of transactions on fastbufs.
Pavel Charvat [Wed, 3 Sep 2008 13:14:19 +0000 (15:14 +0200)]
Implemented trans_vthrow().
Martin Mares [Wed, 3 Sep 2008 11:27:10 +0000 (13:27 +0200)]
Implemented exceptions.
Martin Mares [Tue, 2 Sep 2008 21:17:53 +0000 (23:17 +0200)]
First rough implementation of transactions (no exceptions yet).
Martin Mares [Tue, 2 Sep 2008 21:17:33 +0000 (23:17 +0200)]
Added res_detach().
Martin Mares [Tue, 2 Sep 2008 21:16:49 +0000 (23:16 +0200)]
res_malloc() fails if there is no respool active.
Martin Mares [Tue, 2 Sep 2008 20:07:36 +0000 (22:07 +0200)]
Whitespace fixes.
Martin Mares [Tue, 2 Sep 2008 20:07:18 +0000 (22:07 +0200)]
Automatic tying of fastbufs to resources.
Martin Mares [Tue, 2 Sep 2008 20:06:58 +0000 (22:06 +0200)]
Resources for file descriptors and memory blocks.
Martin Mares [Mon, 1 Sep 2008 23:22:55 +0000 (01:22 +0200)]
More work on resource pools.
I really do not like that the respools use two different types of memory
allocation, but I really want them to be as efficient as possible inside
transactions and we do not have a good thread-local allocator yet.
Martin Mares [Mon, 1 Sep 2008 23:21:38 +0000 (01:21 +0200)]
Cleaned up thread context
Martin Mares [Sat, 30 Aug 2008 17:25:21 +0000 (19:25 +0200)]
We will need to remember the current transaction in per-thread data.
Martin Mares [Sat, 30 Aug 2008 17:24:59 +0000 (19:24 +0200)]
First bones of the transaction system's skeleton.
Martin Mares [Tue, 29 Mar 2011 10:53:37 +0000 (12:53 +0200)]
Merge branch 'master' of ssh://git.ucw.cz/projects/libucw/GIT/libucw
Pavel Charvat [Wed, 10 Sep 2008 09:56:19 +0000 (11:56 +0200)]
libucw: OFFSETOF returns an unsigned int again