Implement clustering housekeeping, deleting 'dead' nodes

This commit is contained in:
Roberto Rosario
2012-07-30 23:51:05 -04:00
parent 014b2f1d1f
commit 87c958638d
3 changed files with 69 additions and 18 deletions

View File

@@ -4,14 +4,22 @@ import logging
from lock_manager.decorators import simple_locking
from .models import Node
from .models import Node, ClusteringConfig
LOCK_EXPIRE = 10
logger = logging.getLogger(__name__)
@simple_locking('refresh_node', 10)
def refresh_node():
@simple_locking('node_heartbeat', 10)
def node_heartbeat():
logger.debug('starting')
node = Node.objects.myself() # Automatically calls the refresh() method too
node = Node.objects.myself()
node.save()
@simple_locking('house_keeping', 10)
def house_keeping():
logger.debug('starting')
ClusteringConfig.objects.delete_dead_nodes()