mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

ludovicp
30.44.2010 7486ef2bb077feb489a55db86707d96e69d12265
refs
author ludovicp <ludovicp@localhost>
Friday, July 30, 2010 14:44 +0200
committer ludovicp <ludovicp@localhost>
Friday, July 30, 2010 14:44 +0200
commit7486ef2bb077feb489a55db86707d96e69d12265
tree 8b277bffaff1927860fdf31ca69dd1d31230a3cd tree | zip | gz
parent 6a7b247e3bcc433397accf7ef1eca1e8a57274e8 view | diff
Implements a disk space thresholds feature, preventing the server from crashing or exiting of disks full.

Each instance of the monitor have two thresholds: "low" and "full". Other components can register their own handlers if they wish to receive notifications when the thresholds are reached. It extends the MonitorProvider interface and utilizes the update interval mechanism to poll the free disk space. The current free space and state of all monitor instances are exposed through the cn=monitor interface under the cn=Disk Space Monitor branch. The only component using the monitor now is the JE backend. When the "low" threshold is reached, write operations will only be permitted to users with the BYPASS_LOCKDOWN privilege. When the "full" threshold is reached, the backend is placed in read-only mode. The default "low" and "full" thresholds are 100 MB and 10MB respectively. Along with the new feature, this patch also added two privileges: SERVER_LOCKDOWN and BYPASS_LOCKDOWN. Any user with the SERVER_LOCKDOWN privilege can put and take the server out of lockdown mode. Any user with the BYPASS_LOCKDOWN mode can bypass lockdown mode. This was restricted to only "root" users before. In addition, the MonitorProvider abstract class no longer extends DirectoryThread. It now uses a static single threaded ScheduledExecutorService to update provider states. Any provider that wishes to have its state updated periodically needs to register its updater runnable with the scheduleUpdate method.
2 files added
50 files modified
1712 ■■■■ changed files
opends/resource/config/config.ldif 4 ●●●● diff | view | raw | blame | history
opends/resource/schema/02-config.ldif 14 ●●●●● diff | view | raw | blame | history
opends/src/admin/defn/org/opends/server/admin/std/GlobalConfiguration.xml 12 ●●●●● diff | view | raw | blame | history
opends/src/admin/defn/org/opends/server/admin/std/LocalDBBackendConfiguration.xml 49 ●●●●● diff | view | raw | blame | history
opends/src/admin/defn/org/opends/server/admin/std/RootDNConfiguration.xml 14 ●●●●● diff | view | raw | blame | history
opends/src/admin/messages/GlobalCfgDefn.properties 2 ●●●●● diff | view | raw | blame | history
opends/src/admin/messages/LocalDBBackendCfgDefn.properties 4 ●●●● diff | view | raw | blame | history
opends/src/admin/messages/RootDNCfgDefn.properties 2 ●●●●● diff | view | raw | blame | history
opends/src/messages/messages/core.properties 2 ●●●●● diff | view | raw | blame | history
opends/src/messages/messages/jeb.properties 17 ●●●●● diff | view | raw | blame | history
opends/src/messages/messages/task.properties 16 ●●●●● diff | view | raw | blame | history
opends/src/messages/messages/tools.properties 1 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/api/DiskSpaceMonitorHandler.java 61 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/api/MonitorProvider.java 170 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/backends/jeb/BackendImpl.java 110 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/backends/jeb/RootContainer.java 6 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/core/MonitorConfigManager.java 14 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/core/RootPrivilegeChangeListener.java 8 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/core/networkgroups/NetworkGroupStatistics.java 20 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/extensions/DiskSpaceMonitor.java 308 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/extensions/ParallelWorkQueue.java 3 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/extensions/TraditionalWorkQueue.java 1 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/BackendMonitor.java 25 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/ClientConnectionMonitorProvider.java 42 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/ConnectionHandlerMonitor.java 25 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/DatabaseEnvironmentMonitor.java 30 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/EntryCacheMonitorProvider.java 22 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/MemoryUsageMonitorProvider.java 36 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/ParallelWorkQueueMonitor.java 34 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/StackTraceMonitorProvider.java 46 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/SystemInfoMonitorProvider.java 46 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/TraditionalWorkQueueMonitor.java 34 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/monitors/VersionMonitorProvider.java 47 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/protocols/ldap/LDAPStatistics.java 39 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/replication/server/DbHandler.java 24 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/replication/server/DraftCNDbHandler.java 24 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/replication/server/ECLServerHandler.java 6 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/replication/server/LightweightServerHandler.java 31 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/replication/server/MessageHandler.java 32 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/replication/server/ReplicationServerDomain.java 39 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/replication/server/ServerHandler.java 29 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/replication/service/ReplicationMonitor.java 33 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/tasks/EnterLockdownModeTask.java 10 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/tasks/LeaveLockdownModeTask.java 10 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/types/Privilege.java 23 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/util/ServerConstants.java 42 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/workflowelement/WorkflowElementStatistics.java 20 ●●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/workflowelement/localbackend/LocalBackendBindOperation.java 31 ●●●● diff | view | raw | blame | history
opends/src/server/org/opends/server/workflowelement/ndb/NDBBindOperation.java 24 ●●●●● diff | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/monitors/GenericMonitorTestCase.java 30 ●●●●● diff | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/monitors/TestMonitorProvider.java 17 ●●●●● diff | view | raw | blame | history
opends/tests/unit-tests-testng/src/server/org/opends/server/replication/StressTest.java 23 ●●●●● diff | view | raw | blame | history