Commit Graph

490 Commits

Author SHA1 Message Date
Gunnar Beutner f2307c4242 Add cmake build files.
Refs #4962
2013-11-03 13:45:26 +01:00
Gunnar Beutner 2c143fbdf8 Remove unused files.
Refs #4962
2013-11-03 11:12:47 +01:00
Gunnar Beutner 375c5a53c6 Don't join threads that are already dead.
Refs #4990
2013-11-03 10:58:57 +01:00
Gunnar Beutner 8279fbd633 Fix deadlock in ThreadPool::Join.
Refs #4989
2013-11-02 10:38:54 +01:00
Gunnar Beutner fcc96cfe8f Fix compilation with Visual Studio 2013.
Refs #4987
2013-11-01 00:13:30 +01:00
Gunnar Beutner 6abf16e6ed Fix deadlock in ThreadPool::Join.
Refs #4986
2013-10-31 19:10:36 +01:00
Gunnar Beutner 7a751eb8af Fix DynamicObject::HasAuthority.
Refs #4979
2013-10-30 15:59:14 +01:00
Gunnar Beutner 4ce0f1e7bb Implement WorkQueue::GetThreadId.
Refs #4758
2013-10-30 13:13:09 +01:00
Gunnar Beutner ef55412855 Fix libdl detection on FreeBSD.
Refs #4977
2013-10-30 13:01:50 +01:00
Gunnar Beutner dc21088680 Fix make dist.
Refs #4976
2013-10-30 12:18:08 +01:00
Gunnar Beutner 9f1c4539dc Remove libltdl dependency.
Refs #4964
2013-10-30 12:00:55 +01:00
Gunnar Beutner db4b3b78d6 Implement class compiler.
Refs #4963
2013-10-28 14:27:36 +01:00
Gunnar Beutner ab402cbfaf Remove unused #includes. 2013-10-22 10:13:35 +02:00
Michael Friedrich 622e4d7f25 Start log flush timer after binding the stream.
refs #4890
2013-10-21 14:15:21 +02:00
Michael Friedrich 07d9a59fe0 Flush StreamLogger periodically.
fixes #4890
2013-10-21 14:09:14 +02:00
Gunnar Beutner 3cb6e3bf82 Make sure to #include <pthread_np.h> on FreeBSD. 2013-10-21 09:52:45 +02:00
Michael Friedrich 39f11334ab Add NOTIFICATION{AUTHOR,AUTHORNAME,COMMENT} macros.
fixes #4914
2013-10-19 00:19:16 +02:00
Gunnar Beutner e5b3a59aa3 Set thread names for the BufferedStream thread procs. 2013-10-18 11:46:19 +02:00
Gunnar Beutner 89d313008d Fix: GraphiteWriter: reconnect on broken socket.
Fixes #4883
2013-10-18 09:11:21 +02:00
Gunnar Beutner c824fc4f9f Fix error message. 2013-10-18 08:48:15 +02:00
Gunnar Beutner 917f288a95 Clean up socket code. 2013-10-18 08:26:48 +02:00
Gunnar Beutner c4941bb3c5 Close all file descriptors before restarting.
Refs #4905
2013-10-17 18:24:35 +02:00
Gunnar Beutner 5647694c2a Build fix. 2013-10-17 15:52:26 +02:00
Gunnar Beutner 65f4176fa8 Fix deadlock in WorkQueue::Join(). 2013-10-17 15:49:53 +02:00
Gunnar Beutner 492aed030e Improve the error message for GetX509Certificate(). 2013-10-17 15:46:50 +02:00
Gunnar Beutner fa845775a2 Fix crashes when restarting Icinga. 2013-10-17 10:56:42 +02:00
Gunnar Beutner b4ab6c8253 Re-implement WorkQueue item limit. 2013-10-17 10:19:17 +02:00
Gunnar Beutner eed901304a Fix deadlock in WorkQueue::Enqueue(). 2013-10-17 09:14:06 +02:00
Gunnar Beutner a03c58f27e MakeSSLContext: Check if keys match. 2013-10-15 21:24:55 +02:00
Gunnar Beutner 1bce8cec97 Fix: ZlibStream doesn't work even if libssl supports zlib.
Fixes #4848
2013-10-15 12:59:49 +02:00
Gunnar Beutner db90a785db Win64 build fix. 2013-10-10 23:30:05 +02:00
Gunnar Beutner 494fb90547 Make sure Registry<> types are unique. 2013-10-10 23:07:34 +02:00
Gunnar Beutner 1b0977a512 Windows build fix. 2013-10-10 23:07:33 +02:00
Gunnar Beutner fdc3f32544 Make bug message somewhat more useful. 2013-10-10 14:29:23 +02:00
Gunnar Beutner fe5c925a63 Windows build fix. 2013-10-09 15:03:24 +02:00
Gunnar Beutner 3f922e5eac Implement Application::GetVersion().
Fixes #4801
2013-10-09 08:46:31 +02:00
Gunnar Beutner d36e2ebd1a Build fix for CentOS 5.9.
Fixes #4819
2013-10-08 15:43:36 +02:00
Gunnar Beutner f449eb9e84 Implement Utility::Random(). 2013-10-03 22:10:46 +02:00
Michael Friedrich e8bd81bddc db_ido: Add idoutils 1.x schema, check required 1.10.0 version.
fixes #4766
2013-09-27 15:56:22 +02:00
Gunnar Beutner 1e4d38725b Make sure WorkQueue::m_Executing is initialized. 2013-09-26 10:25:04 +02:00
Gunnar Beutner bf1a800e39 Update copyright information. 2013-09-25 07:45:56 +02:00
Gunnar Beutner 137c726920 base: Limit work queue size. 2013-09-21 17:53:14 +02:00
Gunnar Beutner 132695a460 base: Limit buffer size for BufferedStream objects. 2013-09-20 09:45:05 +02:00
Gunnar Beutner 74a4432bad Fix: DynamicObject::HasPrivileges should always return true if privs == 0. 2013-09-19 14:47:17 +02:00
Gunnar Beutner a10a4013c7 Change log timestamp format. 2013-09-19 00:06:14 +02:00
Gunnar Beutner 2487d7069c Fix workqueue dispatch. 2013-09-18 17:38:40 +02:00
Gunnar Beutner 3946c388c5 Fix lock contention in ThreadPool::Post. 2013-09-18 11:22:52 +02:00
Gunnar Beutner db2f7d5bf3 Use short name for threadpool worker threads. 2013-09-18 09:32:16 +02:00
Gunnar Beutner e7da4057f9 Implement support for work queues. 2013-09-18 09:09:16 +02:00
Gunnar Beutner 2ed8f1aaa7 Fix memory leak in NetString::ReadStringFromStream. 2013-09-18 07:47:46 +02:00
Gunnar Beutner 31a55987e5 cluster: Implement domain support. 2013-09-17 13:18:40 +02:00
Gunnar Beutner 21c35aabf4 Fix logging performance problem. 2013-09-16 08:59:28 +02:00
Gunnar Beutner 68ec21f13f cluster: Another fix for authority checks. 2013-09-13 07:50:23 +02:00
Gunnar Beutner 95909d82fe cluster: Implement authority checks. 2013-09-12 10:04:04 +02:00
Gunnar Beutner 8a1293f750 Improve error messages for socket error. 2013-09-12 07:50:09 +02:00
Gunnar Beutner 4c23245898 Re-enable TLS compression (again). 2013-09-11 17:12:28 +02:00
Gunnar Beutner 7961dc4e78 Remove DynamicObject::Start call. 2013-09-11 15:38:04 +02:00
Gunnar Beutner 3261ad7106 ThreadPool: Add missing lock. 2013-09-11 10:42:36 +02:00
Gunnar Beutner 7fcde9eca8 cluster: Fix idle timeout. 2013-09-11 09:18:15 +02:00
Gunnar Beutner d4bb2102fb Revert "Revert "Enable TLS compression.""
This reverts commit 1a9c4b6a37.
2013-09-11 08:52:47 +02:00
Gunnar Beutner 1a9c4b6a37 Revert "Enable TLS compression."
This reverts commit b95d0d3264.
2013-09-11 07:53:41 +02:00
Gunnar Beutner b95d0d3264 Enable TLS compression. 2013-09-11 07:48:47 +02:00
Gunnar Beutner 15fae2bf2a Refactor how Application objects work. 2013-09-10 16:03:36 +02:00
Gunnar Beutner a14e72c292 Fix null ptr for Application::GetInstance(). 2013-09-09 14:10:04 +02:00
Gunnar Beutner 161c933edc Build fix: Check if pthread_setname_np() is available. 2013-09-08 13:13:37 +02:00
Gunnar Beutner 4bf0f6b21f Remove unused field. 2013-09-05 09:59:57 +02:00
Gunnar Beutner 7e7a565770 cluster: Send config updates. 2013-09-04 15:47:15 +02:00
Gunnar Beutner e05f270459 base: Don't set thread name for the first thread. 2013-09-03 15:44:31 +02:00
Gunnar Beutner fe0fb171d0 Remove debug code. 2013-09-03 14:10:57 +02:00
Gunnar Beutner ba6be063b6 cluster: Compress log files. 2013-09-03 14:05:03 +02:00
Gunnar Beutner ec6326b55e Fix incorrect indentation. 2013-09-02 12:02:43 +02:00
Gunnar Beutner 6ed052ce85 base: Don't throw exception for valid netstrings. 2013-09-02 11:09:29 +02:00
Gunnar Beutner d5650c90c9 Fix grammar mistake. 2013-09-02 10:53:01 +02:00
Gunnar Beutner 2db418118b Fix build warning. 2013-09-01 06:04:23 +02:00
Gunnar Beutner 86e2f3dd81 Windows build fix. 2013-09-01 06:01:27 +02:00
Gunnar Beutner e8c61a578f Implement restarting Icinga. 2013-08-30 14:27:24 +02:00
Gunnar Beutner 519ce78727 Implement script variables IcingaPrefixDir, IcingaLocalStateDir, IcingaPkgLibDir, IcingaPkgDataDir and IcingaStatePath. 2013-08-30 12:04:24 +02:00
Gunnar Beutner 7f52e04a01 Implement OS-specific support for thread names. 2013-08-30 10:19:32 +02:00
Gunnar Beutner c9ec28440e Another bugfix for the event order. 2013-08-29 19:25:34 +02:00
Gunnar Beutner a3eed67774 Fix order for startup events. 2013-08-29 19:05:06 +02:00
Gunnar Beutner 91724814d8 Fix: State file doesn't work for generated service objects. 2013-08-29 16:53:57 +02:00
Gunnar Beutner fa9ab6c768 Build fix. 2013-08-29 16:09:11 +02:00
Gunnar Beutner 4800329410 Add log message to DynamicObject::RestoreObjects(). 2013-08-29 16:08:03 +02:00
Gunnar Beutner 52b645ed17 Increase minimum number of threads. 2013-08-29 15:49:11 +02:00
Gunnar Beutner 911f64c411 Fix state file functionality. 2013-08-29 10:40:43 +02:00
Gunnar Beutner f134ed61bc Fix: ::Start must be called after restoring the state file.
Fixes #4654
2013-08-29 10:17:12 +02:00
Gunnar Beutner 1de88b0559 Fix the ASSERT() macro. 2013-08-29 09:04:33 +02:00
Gunnar Beutner e0c452bb00 Build fix for --enable-debug. 2013-08-28 16:49:58 +02:00
Gunnar Beutner 58a932ab6f Add error info for ftruncate() call. 2013-08-28 10:48:19 +02:00
Gunnar Beutner f39f69d390 Refactor ASSERT macro. 2013-08-28 08:18:58 +02:00
Gunnar Beutner 42cc9cc9b5 Bug fix for ThreadPool::KillWorker(). 2013-08-27 15:57:00 +02:00
Gunnar Beutner f49bb3d150 Refactor JSON-RPC library and implement check-result messages. 2013-08-27 12:21:41 +02:00
Gunnar Beutner e9e55cd8c0 Remove the replication feature and clean up the code. 2013-08-26 14:56:38 +02:00
Gunnar Beutner 82b3b81b91 Windows build fix. 2013-08-20 08:29:38 +02:00
Gunnar Beutner 74822e929a Implement missing + operator for the Value class.
Fixes #4497
2013-08-19 08:53:59 +02:00
Gunnar Beutner 7a87fc0d5e Fix INITIALIZE_ONCE(). 2013-08-01 11:15:11 +02:00
Gunnar Beutner b9e988f309 Fix include guards for initialize.h. 2013-08-01 11:10:02 +02:00
Gunnar Beutner bdd2adc85e Implement INITIALIZE_ONCE(). 2013-08-01 11:08:06 +02:00
Gunnar Beutner a8f880e1b6 Fix compiler warning. 2013-07-31 08:29:45 +02:00
Gunnar Beutner 73beb278cf compat: Fix timestamps. 2013-07-25 09:45:40 +02:00
Gunnar Beutner 28726e5025 Implement status updates for services. 2013-07-24 10:55:04 +02:00
Gunnar Beutner cab2b41e56 Implement shift operator for the Value class. 2013-07-23 09:11:53 +02:00
Gunnar Beutner 3a7bae618a Implement IDO (well, part of it anyway). 2013-07-16 10:19:13 +02:00
Michael Friedrich 36e9e9adbd custom attr: move into DynamicObject using GetCustom() 2013-07-12 15:13:05 +02:00
Michael Friedrich a5d3b74da6 tcpsocket: fix fd on setsockopt SO_REUSEADDR 2013-07-12 11:03:36 +02:00
Gunnar Beutner 4961523e91 Add DECLARE_PTR_TYPEDEFS macro for Ptr/WeakPtr typedefs. 2013-07-09 08:43:52 +02:00
Michael Friedrich 8c3663ab0e stream: remove ReadLine maxLength
it doesn't do what its name suggests.

refs #4370
2013-07-04 09:41:51 +02:00
Michael Friedrich 80c91aa91e stream/livestatus: refactor ReadLine with context saving 2013-07-03 16:16:38 +02:00
Gunnar Beutner d2b31f6a06 Implement notification conditions.
Fixes #2841
2013-06-26 09:08:50 +02:00
Gunnar Beutner f3d0738e93 Implement script variables. 2013-06-25 09:21:42 +02:00
Gunnar Beutner 0d64a8fd32 Don't seal DynamicObject updates. 2013-06-19 10:37:50 +02:00
Gunnar Beutner e30d3c5691 Implement command timeouts.
Fixes #2723
2013-06-13 12:05:24 +02:00
Gunnar Beutner d042a181bd Refactor commands and implement event handlers.
Fixes #3877
Fixes #4001
2013-06-13 11:33:00 +02:00
Gunnar Beutner 4fadd3bfa0 Remove the ILogger interface.
Fixes #3860
2013-06-06 11:26:30 +02:00
Gunnar Beutner b8669d67ca Fix inheritance for config types. 2013-06-06 11:26:00 +02:00
Gunnar Beutner f4d04f8172 Fix ThreadPool exception on shutdown.
Fixes #3891
2013-05-13 09:58:24 +02:00
Gunnar Beutner b4fa556ac6 Fix: ConfigItem types and names are not case-insensitive
Fixes #4044
2013-05-08 10:46:50 +02:00
Gunnar Beutner 10dff1d8c1 Removed dependency on boost/uuid. 2013-05-03 11:26:18 +02:00
Gunnar Beutner 4db8b09ff7 Build fix. 2013-04-22 11:39:23 +02:00
Gunnar Beutner 0fcbfdb236 Windows build fix. 2013-04-19 15:28:34 +02:00
Gunnar Beutner d86767e8e3 Fix memory leak in the StdioStream class. 2013-04-19 15:06:45 +02:00
Gunnar Beutner fe4fd67405 Bugfixes for the BufferedStream class. 2013-04-19 14:47:41 +02:00
Gunnar Beutner 5db55ea384 Fix 'make distcheck'. 2013-04-19 13:17:17 +02:00
Gunnar Beutner fcdb690b48 Even more unit tests. 2013-04-19 12:58:16 +02:00
Gunnar Beutner d0113e33da Add more unit tests. 2013-04-19 11:27:18 +02:00
Gunnar Beutner 8a1d24042d Implement complex 1.x timeperiod definitions. 2013-04-17 14:26:04 +02:00
Gunnar Beutner 2e600a7810 More bugfixes for timeperiods. 2013-04-16 10:55:23 +02:00
Gunnar Beutner 23b75fd30d Fix crash when application config item is missing. 2013-04-08 10:02:06 +02:00
Gunnar Beutner 4e5e488b17 Remove unused #include. 2013-04-08 09:49:53 +02:00
Gunnar Beutner 6ef5d2deba Fix FIFO bug. 2013-04-08 09:44:12 +02:00
Gunnar Beutner 06839ba4b0 Fix case where all threadpool threads are killed. 2013-04-05 14:32:16 +02:00
Gunnar Beutner 1682ff2839 Optimize replication messages. 2013-04-05 14:05:00 +02:00
Gunnar Beutner d9730f5b83 Bugfixes for the replication component. 2013-04-05 12:09:26 +02:00
Gunnar Beutner 09f395a7de Refactor the socket subsystem. 2013-04-04 16:08:40 +02:00
Gunnar Beutner ca4157ea24 Fix memory leaks in the config parser. 2013-04-04 13:51:36 +02:00
Gunnar Beutner 8ac0a80101 Bugfixes for the socket subsystem. 2013-04-02 11:08:35 +02:00
Gunnar Beutner 49c6c358b1 Bugfixes for the JSON-RPC sub-system. 2013-04-01 16:25:23 +02:00
Gunnar Beutner b0c8f3f626 Make thread pool utilization calculation more accurate. 2013-03-28 12:14:39 +00:00
Gunnar Beutner 2e051ad9e2 Minor performance tweaks. 2013-03-27 18:02:51 +00:00
Gunnar Beutner babc948cd0 Performance improvements for Value -> double conversions. 2013-03-27 06:26:42 +00:00
Gunnar Beutner 70e96aa2f0 Refactor ScriptFunctions. 2013-03-25 19:47:02 +00:00
Gunnar Beutner ba152d6dc4 Windows build fix. 2013-03-25 18:01:02 +00:00
Gunnar Beutner fd3e92ea0c Refactor AsyncTasks. 2013-03-25 17:36:15 +00:00
Gunnar Beutner e739dfd88f EventQueue: Further changes to how we determine the optimal number of threads. 2013-03-25 16:12:25 +01:00
Gunnar Beutner 167be058f0 More EventQueue tuning. 2013-03-23 20:38:41 +01:00
Gunnar Beutner 8b065b36df Process class: Pipe FD should be blocking. 2013-03-23 18:36:28 +01:00
Gunnar Beutner 6b6be8eec3 Even more tuning. 2013-03-23 15:58:21 +01:00
Gunnar Beutner dc2efae421 More tuning. 2013-03-23 12:54:14 +01:00
Gunnar Beutner 7ac65b0a47 Tune thread spawning behavior. 2013-03-23 12:50:07 +01:00
Gunnar Beutner d04a04d897 Make the event queue adaptive. 2013-03-23 12:23:13 +01:00