ChangeLog | ChangeLog | |||
---|---|---|---|---|
2012-01-05 The Quarterback Library Release Team <quarterback-devel@fedora | ||||
hosted.org> | ||||
Bump the library version. | ||||
2012-01-05 Angus Salkeld <asalkeld@redhat.com> | ||||
ipc: make coverity happy. | ||||
Fix two simple coverity warnings | ||||
trie: correct the free'ing of node mem | ||||
Fix ./check -h output | ||||
map: free unused leaf nodes | ||||
So if a node has no children and no value or notifier | ||||
then it is freed. | ||||
2012-01-04 Angus Salkeld <asalkeld@redhat.com> | ||||
Allow the array to automatically grow. | ||||
this makes it a bit friendlier to use, as | ||||
the user will not have to call qb_array_grow(). | ||||
map: add some introductory doxygen | ||||
2012-01-03 Angus Salkeld <asalkeld@redhat.com> | ||||
IPC: remove fd from poll loop in the disconnect | ||||
Until now we have been relying on getting a POLLHUP, but | ||||
under heavy load we seem to get an old poll event | ||||
that cause a double deref of the connection object. | ||||
IPC: add a new state to the connection state | ||||
This to handle disconnecting in a failure state (before | ||||
the connection has been established. | ||||
Another aspect to this is we don't want to call | ||||
connection_destroyed() if we haven't called | ||||
connection_created(). | ||||
2011-12-29 Yunkai Zhang <qiushu.zyk@taobao.com> | ||||
Fixed bug: incorrect array length definition | ||||
When MAX_BINS is larger than MAX_BIN_ELEMENTS, this bug will cause | ||||
boudary overflow in qb_array_create function. | ||||
2011-12-22 Fabio M. Di Nitto <fdinitto@redhat.com> | ||||
Fix a compile warning on sparc (epoll_create1) | ||||
The problem is that sys/epoll.h was broken on sparc and alpha for a | ||||
bunch of glibc releases. | ||||
glibc has the symbol correctly exported, that's why ./configure find | ||||
s | ||||
it, but the header is not always correct. Recent versions of glibc h | ||||
ave | ||||
the correct header, so we simply workaround the broken ones. | ||||
This fix is only necessary to build with --enable-fatal-warnings, | ||||
otherwise you simply see a build warning, but there are no runtime | ||||
issues at any stage. | ||||
2011-12-22 Angus Salkeld <asalkeld@redhat.com> | ||||
re-fix qb_strerror_r() in case caller frees buf. | ||||
2011-12-22 Fabio M. Di Nitto <fdinitto@redhat.com> | ||||
Fix some sparc test failures. | ||||
I (Angus) have changed some of Fabio's changes. | ||||
2011-12-21 Andrew Beekhof <andrew@beekhof.net> | ||||
LOG: pass args directly into qb_log_from_external_source() | ||||
2011-12-21 Angus Salkeld <asalkeld@redhat.com> | ||||
check: add mac checker | ||||
Merge some portability changes from the mingw branch | ||||
Re-add new automake options | ||||
I like the automake options (and encourage other developers to | ||||
install the neccessary autotools). | ||||
Here is a handy script to install the newest autotools | ||||
into a private directory (if you can't get them pre-packaged). | ||||
http://people.redhat.com/meyering/autotools-install | ||||
autotools-install --prefix=$HOME/autotools --skip-check | ||||
2011-12-19 Andrew Beekhof <andrew@beekhof.net> | ||||
Support compilation on Mac OSX | ||||
2011-12-19 Angus Salkeld <asalkeld@redhat.com> | ||||
make -rt configurable (not needed on mac) | ||||
Thanks to Andrew Beekhof | ||||
fix strerror on non-linux | ||||
2011-12-18 Angus Salkeld <asalkeld@redhat.com> | ||||
check: add abi & api to help | ||||
trie: don't create children array on all nodes | ||||
(save mem on leaf nodes) | ||||
map: tweek the tests to better test ptrie | ||||
trie: convert the trie to a patricia trie (or radix tree) | ||||
http://en.wikipedia.org/wiki/Radix_tree | ||||
The point of this is to save memory. | ||||
examples: add example corosync data to mapnotify.c | ||||
trie: add a way to get node count and mem usage | ||||
trie: split trie_lookup into trie_lookup and trie_insert | ||||
2011-12-16 Angus Salkeld <asalkeld@redhat.com> | ||||
clean .version .tarball-version | ||||
2011-12-14 Angus Salkeld <asalkeld@redhat.com> | ||||
IPC: provide finer grained flowcontrol | ||||
this will allow the user to control the behaviour better. | ||||
MAP: add honza's example application. | ||||
MAP: add a notifier purely to allow the user to free memory. | ||||
At the moment if you have multiple notifiers it becomes impossible | ||||
to figure out when it is safe to free the values. | ||||
This new callback can only be added once and is called | ||||
once, making it better suited to freeing memory. It is | ||||
also called after the deleted and replaced notifiers. | ||||
2011-12-07 Angus Salkeld <asalkeld@redhat.com> | ||||
Improve the stopwatch doxygen comments. | ||||
2011-11-25 Angus Salkeld <asalkeld@redhat.com> | ||||
Fix errors found by api-sanity-autotest | ||||
map: enforce uniqueness of the notifiers based on (func,key,event,us | ||||
erdata) | ||||
map: add qb_map_notify_del_2() which includes the userdata. | ||||
This allows you to match on the same fields that you provided | ||||
in the add. Now including the userdata. | ||||
skiplist: add the inserted notification | ||||
skiplist: implement skiplist_notify_del() | ||||
Hashtable: fix the ordering of the new/old value in the notification | ||||
Add tests for hash and skiplist notifications | ||||
By default don't build in the slow benchlog | ||||
2011-11-22 Angus Salkeld <asalkeld@redhat.com> | ||||
check: add abi checking script | ||||
2011-11-16 The Quarterback Library Release Team <quarterback-devel@fedora | ||||
hosted.org> | ||||
Bump the library version to 0.7.0 | ||||
2011-11-10 Angus Salkeld <asalkeld@redhat.com> | ||||
LOOP: free up the signal list when qb_loop_destory() is called | ||||
LOG: improve the removal of filters | ||||
LOG: clean up mem better when qb_log_fini is called | ||||
ARRAY: make sure that num_bins stays below MAX_BINS | ||||
TEST: add a test that reproduces issue/20 | ||||
https://github.com/asalkeld/libqb/issues/20 | ||||
2011-11-08 Angus Salkeld <asalkeld@redhat.com> | ||||
Fix ./check -h output | ||||
Lindent formatting changes. | ||||
LOOP: close opened pipe if function fails | ||||
LOG: change assert into an early return | ||||
Remove unnecessary checks before free() | ||||
MAP: Fix trie_new_node() and make skiplist_node_new() more consisten | ||||
t. | ||||
2011-11-08 miz-take <miz-take3@gmail.com> | ||||
Improve the error handling esp. after failed malloc's | ||||
Reviewed-by: Angus Salkeld <asalkeld@redhat.com> | ||||
2011-10-24 Angus Salkeld <asalkeld@redhat.com> | ||||
skiplist: destroy the list header last. | ||||
2011-10-23 Angus Salkeld <asalkeld@redhat.com> | ||||
examples: add ipc client/server | ||||
examples: Add tcpclient.c/tcpserver.c | ||||
Move simple-log.c to examples/ | ||||
TEST: fix the map load test. | ||||
LOG: check for SCHED_IDLE | ||||
LOG: fix filter input check | ||||
LOG: add stdarg to qblog.h | ||||
Add a ./check mock | ||||
2011-10-21 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: only range check "t" when filtering else tags are not applied. | ||||
2011-10-18 Angus Salkeld <asalkeld@redhat.com> | ||||
Log: move the lock to below the sem_wait | ||||
(coverity ordering warning) | ||||
check: add a handy coverity check | ||||
./check coverity | ||||
TEST: add a simple test for right-aligned text in format strings | ||||
2011-10-18 Andrew Beekhof <andrew@beekhof.net> | ||||
Log: Support right-aligned text in format strings | ||||
2011-10-18 Yunkai Zhang <qiushu.zyk@taobao.com> | ||||
Fixed segment fault bug when use logging API at i386 platform | ||||
This bug cause by qb_vsprintf_serialize function. It parse "%llx" fo | ||||
rmat | ||||
as _long_ other than _long long_. | ||||
At x86_64 platform, both sizeof(long) and sizeof(long long) is 8, th | ||||
is | ||||
issue would not be triggered, so we could only catch it at i386. | ||||
2011-09-16 Angus Salkeld <asalkeld@redhat.com> | ||||
MAP: pass user_data to the callback correctly | ||||
2011-09-15 Angus Salkeld <asalkeld@redhat.com> | ||||
MAP: add a more generic notification system | ||||
2011-09-13 Angus Salkeld <asalkeld@redhat.com> | ||||
MAP: add prefix iteration for the trie | ||||
hashtable: fix the iterator | ||||
skiplist: fix order of deref | ||||
skiplist: use ++ and -- operators | ||||
MAP: improve the storage in the trie | ||||
TESTS: improve the map tests | ||||
- add a iterator to test_map_simple() | ||||
- improve the test output | ||||
2011-09-12 Angus Salkeld <asalkeld@redhat.com> | ||||
MAP: add a trie implementation | ||||
http://en.wikipedia.org/wiki/Trie | ||||
2011-09-09 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: allow large priorities | ||||
They will be printed as trace, it's mainly to make | ||||
filtering more flexible | ||||
LOG: add qb_log_filter_ctl2() so we can filter a range of priorities | ||||
2011-09-09 The Quarterback Library Release Team <quarterback-devel@fedora | ||||
hosted.org> | ||||
Bump the library version. | ||||
2011-09-09 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: fix QB_LOG_INIT_DATA | ||||
this is weird, but now it actually works | ||||
2011-09-08 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: add a way of getting the target state | ||||
This is so we can do the following: | ||||
for (t = 0; t < QB_LOG_TARGET_MAX; t++) { | ||||
if (qb_log_ctl(t, QB_LOG_CONF_STATE_GET, 0) == QB_LOG_STATE_ENAB | ||||
LED) { | ||||
// bla bla | ||||
} | ||||
} | ||||
LOG: support comma seperated lists of file and function filters | ||||
2011-09-07 Angus Salkeld <asalkeld@redhat.com> | ||||
map: add iterator that does't use a callback | ||||
MAP: change the keys from void* to char* | ||||
I think this is the most common usage and greatly | ||||
simplifies the api. | ||||
LOG: add facility conversion functions | ||||
2011-09-01 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: fix the default syslog filter | ||||
2011-08-26 Angus Salkeld <asalkeld@redhat.com> | ||||
defs: better define va_copy | ||||
Fix "./check dist" | ||||
2011-08-25 Angus Salkeld <asalkeld@redhat.com> | ||||
hashtable: Fix a lint warning | ||||
2011-08-22 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: fix ansi build | ||||
Initial map using either a skiplist or a hashtable | ||||
Add a stop watch | ||||
docs: add utils to the mainpage | ||||
LOG: serialize the va_list, don't snprintf | ||||
2011-08-19 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: change active list into array access | ||||
just keep track of the max used targets | ||||
TEST: add int arguments to log bench | ||||
atomic: fix qb_atomic_pointer macros | ||||
2011-08-07 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: allow the thread priority to be set. | ||||
2011-07-19 Angus Salkeld <asalkeld@redhat.com> | ||||
Fix splint warning on ubuntu 11.04 | ||||
2011-07-18 The Quarterback Library Release Team <quarterback-devel@fedora | ||||
hosted.org> | ||||
Make sure write_logs.c is deleted by "make distclean" | ||||
2011-07-14 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: move priority check up to prevent unnecessary format. | ||||
Add a qb_strerror_r wrapper. | ||||
This is to make the calling code more portable | ||||
Remove TODO from dist_doc_DATA | ||||
2011-07-13 Angus Salkeld <asalkeld@redhat.com> | ||||
Delete TODO (use github issues) | ||||
Add some more content to the README | ||||
LOG: add string.h to qblog.h | ||||
2011-06-27 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: use strerror_r instead of strerror in qb_perror() | ||||
TEST: bump up the logging timeout | ||||
This was failing on sparcv9, but seems to just be a slow machine. | ||||
With a bigger timeout it passes. | ||||
2011-06-26 Angus Salkeld <asalkeld@redhat.com> | ||||
configure: improve arch & os detection output. | ||||
LOG: fix alignment compiler warning on sparc | ||||
Revert "LOG: use uint8_t for pointer manipulation" | ||||
This reverts commit a47ae0b6598f16189d55386ef9a3ad1cad204893. | ||||
2011-06-26 Jim Meyering <jim@meyering.net> | ||||
don't let an invalid time stamp provoke a NULL dereference | ||||
* lib/log_blackbox.c (qb_log_blackbox_print_from_file): Handle | ||||
localtime failure by printing the long-int representation rather | ||||
than a strftime-formatted one. | ||||
2011-06-23 Angus Salkeld <asalkeld@redhat.com> | ||||
Fix references to README | ||||
Change README into markdown to look better on github | ||||
2011-06-22 Angus Salkeld <asalkeld@redhat.com> | ||||
Change Lindent options to break the procedure type. | ||||
so change: | ||||
int foo(void) | ||||
to | ||||
int | ||||
foo(void) | ||||
LOOP: make the return more consistent in qb_loop_timer_expire_time_g | ||||
et() | ||||
If there is any error return 0 | ||||
(meaning the timer is or has expired) | ||||
2011-06-21 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: use uint8_t for pointer manipulation | ||||
char changes size on different arches. | ||||
2011-06-20 Angus Salkeld <asalkeld@redhat.com> | ||||
IPC: use the correct pointer type. | ||||
Consistently prepend "qb-" to files in /dev/shm | ||||
Dietmar: can you confirm this works for you? | ||||
2011-06-07 The Quarterback Library Release Team <quarterback-devel@fedora | ||||
hosted.org> | ||||
Update the library version to 0.5.0 | ||||
2011-06-07 Angus Salkeld <asalkeld@redhat.com> | ||||
check: Change -s to --no-print-directory | ||||
Re-fix mmap() woes on sparc. | ||||
2011-06-03 Angus Salkeld <asalkeld@redhat.com> | ||||
Revert "Fix ringbuffer creation on sparc" | ||||
This reverts commit 683296f180fdd7b7834dc1506b7a192ae2684c04. | ||||
2011-06-02 Angus Salkeld <asalkeld@redhat.com> | ||||
Fix ringbuffer creation on sparc | ||||
On the first call to qb_rb_open() we try using a number of | ||||
page sizes. This because the system might have CONFIG_HUGETLB_PAGE_S | ||||
IZE | ||||
defined in their kernel. So even though sysconf() returns 2K or 4K | ||||
some arch's mmap() require alignment on these boundaries. | ||||
TEST: some improvements to the check script to make it's output bett | ||||
er. | ||||
It quietens the output and this makes it easier to understand the | ||||
results. | ||||
TEST: Fix ssize_t format compiler warning | ||||
Make building a bit quieter by default. | ||||
Fix "make dist". | ||||
The deps were not quite right with write_logs.c | ||||
Fix some spelling. | ||||
2011-05-31 Angus Salkeld <asalkeld@redhat.com> | ||||
TEST: remove failed server tests. | ||||
They now fail (because of 8880465924ce090365ee6b87c4d0c167c7deeb62). | ||||
We now need a smart way of detecting that a process is the | ||||
last one attached to the ringbuffer and free it. | ||||
TEST: initialize some globals before the test is run. | ||||
This is not strictly needed as each test is forked, | ||||
but is a bit more explicit. | ||||
TEST: fix the server shutdown. | ||||
The server was getting prematurently killed, and was | ||||
causing resource leakage. We now give the server a little | ||||
time to respond to the connection beiong closed. | ||||
TEST: add job_add poll_handler | ||||
TEST: name the ipc connections after the test functions | ||||
IPC: misc cleanup & logging improvements | ||||
IPC: make the setting the flowcontrol atomic | ||||
2011-05-30 Виноградов Василий <wmdlr@yandex.ru> | ||||
RB: More consistent behavior when closing a ringbuffer | ||||
2011-05-27 Виноградов Василий <wmdlr@yandex.ru> | ||||
Provide some helpful macros for iterating over lists. | ||||
2011-05-27 Angus Salkeld <asalkeld@redhat.com> | ||||
TEST: make the creation of write_logs.c atomic | ||||
2011-05-26 Angus Salkeld <asalkeld@redhat.com> | ||||
TEST: make sure make-log-test appends a bracket | ||||
Correct the declarations of some inlines | ||||
Add support for ansi inline and typeof | ||||
Remove all the C++ comments | ||||
Add an ansi option into ./check | ||||
Also included in ./check all | ||||
2011-05-24 Jim Meyering <jim@meyering.net> | ||||
qb_rb_write_to_file clean-up | ||||
* lib/ringbuffer.c (qb_rb_write_to_file): Remove dead initialization | ||||
and redundant "result < 0" tests. | ||||
adjust .gitignore so "git status" ignores all build artifacts | ||||
use latest git-version-gen from gnulib | ||||
2011-05-23 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: add custom targets | ||||
This is partly to make the tests more robusts and | ||||
to add some more flexibility to the logging. | ||||
2011-05-20 Angus Salkeld <asalkeld@redhat.com> | ||||
COV 15: fix potential reference after deref | ||||
COV 14: fix potential dereference after free() | ||||
COV 13: cleanup error handling in qb_util_circular_mmap() | ||||
COV 12: prevent unintialized value error in bmcpt | ||||
COV 10: fix mem leaks in qb_rb_create_from_file() | ||||
COV 9: fix mem leak in qb_rb_open error condition | ||||
COV 8: don't leak mem when returning an error. | ||||
COV 7: close file if for some strange reason it exists | ||||
COV 6: check for a failed sysconf() before calling malloc() | ||||
COV 4 & 11: cleanup error handling in handle_new_connection() | ||||
COV 3: remove dead code. | ||||
qb_rb_close() is called in the signal handler. | ||||
COV 2: fix unreachable code (move call to qb_ipcs_us_withdraw up) | ||||
COV 1: dead code - clean up ifdefs | ||||
2011-05-19 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: add a rwlock to protect the lists. | ||||
2011-05-18 Angus Salkeld <asalkeld@redhat.com> | ||||
Update the TODO | ||||
IPC: set the return status before cleaning up. | ||||
Fix the test dependancies (and "make rpm") | ||||
My first attempt at this broke "make rpm" - oops. | ||||
It seems that we need a common extension for tests to get the | ||||
dependancies to work. | ||||
fix the FIXME's Jim pointed out | ||||
2011-05-17 Jim Meyering <meyering@redhat.com> | ||||
avoid autoconf warning | ||||
Autoconf warned about this: | ||||
configure.ac:72: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE\ | ||||
call detected in body | ||||
That's warning about the use via AC_COMPILE_IFELSE without | ||||
specifying a language. The easiest way to work around that is | ||||
to avoid the use of CC altogether and instead to use the preprocesso | ||||
r. | ||||
* configure.ac (cc_supports_flag): Use AC_PREPROC_IFELSE in place | ||||
of AC_COMPILE_IFELSE (and CPPFLAGS in place of CFLAGS). | ||||
2011-05-17 Jim Meyering <jim@meyering.net> | ||||
add FIXME comments for other NULL-deref-upon-OOM problems | ||||
* lib/ipc_us.c (handle_new_connection): | ||||
* lib/loop_job.c (qb_loop_jobs_create): | ||||
* lib/loop_poll.c (qb_loop_poll_create): | ||||
* lib/loop_timerlist.c (qb_loop_timer_create): | ||||
* lib/ringbuffer.c (qb_rb_open): | ||||
* lib/ipcc.c (qb_ipcc_connect): Likewise. | ||||
avoid NULL dereference after failed malloc | ||||
* lib/util.c (qb_thread_lock_create): Handle failed malloc. | ||||
* lib/ipc_posix_mq.c (qb_ipc_pmq_sendv): Likewise. | ||||
* lib/loop_job.c (qb_loop_job_add): Likewise. | ||||
* lib/loop.c (qb_loop_create): Likewise. | ||||
2011-05-17 Angus Salkeld <asalkeld@redhat.com> | ||||
make sure check_resources is the last test to run | ||||
http://www.gnu.org/s/hello/manual/automake/Simple-Tests-using-parall | ||||
el_002dtests.html | ||||
2011-05-17 Jim Meyering <jim@meyering.net> | ||||
make the tests run in parallel | ||||
I ran "make check" in libqb and watched impatiently ;-) | ||||
as the tests ran in serial on my multi-core system. | ||||
If you add automake's "parallel-tests" option below, they'll | ||||
run in parallel. | ||||
The color-tests option makes it so the "PASS" and "FAIL" words | ||||
are colored green and red respectively. Nice, but no big deal. | ||||
Similarly nice-to-have is the "dist-xz" option. | ||||
That makes is so when you run "make dist" it creates xz-compressed | ||||
tarballs in addition to the usual gzip-compressed ones. | ||||
The advantage of also using xz is that it compresses significantly b | ||||
etter: | ||||
$ du -sh *z | ||||
1.2M libqb-0.4.1.75-3737-dirty.tar.gz | ||||
812K libqb-0.4.1.75-3737-dirty.tar.xz | ||||
Now, whenever a project releases both gzip-compressed and | ||||
xz-compressed tarballs, I always download only the latter, smaller o | ||||
nes. | ||||
Not only does it save time on the download (minimal in this case), | ||||
but it occupies less space on disk and uncompresses faster. | ||||
2011-05-13 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: strip the last "\n" from incomming messages | ||||
LOG: make the "entering" and "leaving" capital | ||||
2011-05-06 Angus Salkeld <asalkeld@redhat.com> | ||||
Fix some compiler warnings | ||||
LOG: add an enter and leave trace function | ||||
2011-04-18 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: add locking & change dcs list into a singly-linked list. | ||||
TESTS: add a threaded logging test | ||||
LOG: check prioritynames[] bounds | ||||
LOG: created array with wrong size - yikes! | ||||
LOG: include needed stdio.h | ||||
LOG: make all priorities uint8_t | ||||
2011-04-15 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: fix logging to file | ||||
qb_log_file_open() left the target in an UNUSED state. | ||||
Compile on FreeBSD | ||||
Also re-run autoscan. | ||||
2011-04-14 Angus Salkeld <asalkeld@redhat.com> | ||||
Add write_logs.c to .gitignore | ||||
LOG: refactor the filter code a bit. | ||||
Reuse code a bit better. | ||||
Add qbconfig.h to the list of headers to be installed. | ||||
LOG: fix new callsite pointer (not incrementing correctly) | ||||
TEST: make a way of testing both with and without __attribute__((sec | ||||
tion)) | ||||
LOG: fix the building of write_logs.c (for bench-log) | ||||
LOG: fix formatting test (fails in make distcheck) | ||||
This fails as the BUILDING_IN_PLACE patch was left out. | ||||
Now re-added, make distcheck passes. | ||||
TESTS: use new logging API | ||||
LOG: add some basic tests & fixes | ||||
LOG: add dynamic callsites (for platforms that don't support __attri | ||||
bute__(section) | ||||
ARRAY: add getter's to retrieve number of bins and elms/bin | ||||
2011-04-13 Angus Salkeld <asalkeld@redhat.com> | ||||
ARRAY: return -ERANGE when index is out of range. | ||||
So you can differentiate the other errors (-EINVAL) | ||||
2011-04-12 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: add LOG_TRACE | ||||
LOG: add the ability to adjust the priority sent to syslog() | ||||
If you have: | ||||
qb_log_filter_ctl(QB_LOG_SYSLOG, QB_LOG_FILTER_ADD, | ||||
QB_LOG_FILTER_FILE, "hack.c", LOG_DEBUG); | ||||
these logs will not make there way to /var/log/messags | ||||
without reconfiguring syslog. | ||||
So to help on the fly debugging do the following: | ||||
qb_log_ctl(QB_LOG_SYSLOG, QB_LOG_CONF_PRIORITY_BUMP, | ||||
LOG_INFO - LOG_DEBUG); | ||||
Now all messages that have the QB_LOG_SYSLOG target set | ||||
will have their priority bumped before going to syslog(). | ||||
2011-04-09 Angus Salkeld <asalkeld@redhat.com> | ||||
Fix the copyright in bench-log.c | ||||
LOG: flush output to files | ||||
LOG: change the target type from uint32_t to int32_t. | ||||
This is so that you won't get warnings from mixing integer types. | ||||
I have updated the input checks in log.c to check for invalid | ||||
targets. | ||||
LOG: only set state in log.c | ||||
This requires an enable after qb_log_file_open() | ||||
2011-04-06 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: fix splint warning | ||||
LOG: teach filter_ctl() to write tags | ||||
LOG: remove the tags arument from qb_log() and add qb_logt() which h | ||||
as the tags argument. | ||||
I think in most cases tags will not be used and it will | ||||
just be a pain inserting ", 0". But if someone wants to use | ||||
tags like this then they still can via qb_logt() | ||||
LOG: change the filter matches to use strstr() for partial match sup | ||||
port. | ||||
LOG: fix shared library callsites | ||||
This finds all the callsites in shared libraries | ||||
(using dl_iterate_phdr()) at the time qb_log_init() | ||||
is called. | ||||
Conflicts: | ||||
lib/log.c | ||||
LOG: add a callsite_dump() function to see what callsite are avaliab | ||||
le. | ||||
LOG: support dynamically loaded modules | ||||
LOG: make prioritynames[] static | ||||
2011-04-04 Angus Salkeld <asalkeld@redhat.com> | ||||
Add required include to qbloop.h | ||||
Merge branch 'logging' | ||||
2011-04-01 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: make the documentation more meaningful | ||||
LOG: general cleanup (indentation, NULL checks, etc...) | ||||
LOG: move formatting code into new file | ||||
Add D_FORTIFY_SOURCE=2 to check script | ||||
LOG: add a qb_log_fini() to cleanup | ||||
This replaces qb_log_thread_stop() but also release shared mem | ||||
2011-03-31 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: fix mapping from priority to name | ||||
Remove qb_log_priority_name_get() as we have the | ||||
formatting. | ||||
LOG: add a new "tags" field | ||||
this is a tags that is used by the caller to: | ||||
- define the message as an external message (needs free'ing) | ||||
- define a feature or susbsytem that can be printed in the log messa | ||||
ge. | ||||
LOG: change "tags" field to "targets" | ||||
This is it's new meaning, so makes things clearer | ||||
LOG: keep a list of active targets to speed iteration | ||||
LOG: deal better with timestamps | ||||
1) use gettimeofday() - suprisingly faster than clock_gettime(MONOTO | ||||
NIC) | ||||
2) don't format the time until it is needed | ||||
3) insert time_t into the blackbox (not a formatted string) | ||||
This improves performance and tidies the code up. | ||||
It also requires less space in the blackbox. | ||||
LOG: add bench-log to .gitignore | ||||
2011-03-31 Steven Dake <sdake@redhat.com> | ||||
Add a benchmark program for the qblog flight recorder | ||||
2011-03-31 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: fix minor compile warning | ||||
2011-03-30 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: add a format option to each target. | ||||
LOG: improve the docs | ||||
LOG: add qb_log_file_close() | ||||
LOG: add the ability to import logs from other sources. | ||||
Be more consistent with the C++ protection | ||||
Ignore 2 splint warnings | ||||
SPEC: make the spec file more like the fedora one. | ||||
LOG: re-work the API to be easier to use. | ||||
2011-03-28 Angus Salkeld <asalkeld@redhat.com> | ||||
Add some content to the README | ||||
LOG: add qb_log_priority_name_get() | ||||
LOG: fix make install and distcheck | ||||
LOG: add a qb_perror() function | ||||
- Add an internal version too | ||||
- Update the library code to use it. | ||||
2011-03-27 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: add a timestamp to the log handler | ||||
This makes sure that the timestamp is correct at the time | ||||
the call to qb_log() was called. | ||||
TESTS: remove unused function | ||||
LOG: split the tag function out into tag and untag | ||||
LOG: improve the doxygen overview. | ||||
LOG: fix splint warnings | ||||
2011-03-26 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: use the new logging mechanism for internal log messages. | ||||
This uses the top bit of the "tags" to distinguish | ||||
the internal messages from extternal ones. | ||||
2011-03-25 Angus Salkeld <asalkeld@redhat.com> | ||||
LOG: add a blackbox | ||||
LOG: add threaded logging (non-blocking) | ||||
LOG: create a common header | ||||
Add logging infrastructure. | ||||
2011-01-31 The Quarterback Library Release Team <quarterback-devel@fedora hosted.org> | 2011-01-31 The Quarterback Library Release Team <quarterback-devel@fedora hosted.org> | |||
Set the gpgsignkey in release.mk | Set the gpgsignkey in release.mk | |||
Bump library version to 0.4.1 | Bump library version to 0.4.1 | |||
2011-01-31 Angus Salkeld <asalkeld@redhat.com> | 2011-01-31 Angus Salkeld <asalkeld@redhat.com> | |||
BUILD: only set -g and -O options if explicitly requested. | BUILD: only set -g and -O options if explicitly requested. | |||
compiler debug & optimization flags are only set with either | compiler debug & optimization flags are only set with either | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 914 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |