1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
4 * Ceph - scalable distributed file system
6 * Copyright (C) 2014 John Spray <john.spray@inktank.com>
8 * This is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License version 2.1, as published by the Free Software
11 * Foundation. See file COPYING.
17 // Python.h comes first because otherwise it clobbers ceph's assert
19 // Python's pyconfig-64.h conflicts with ceph's acconfig.h
20 #undef HAVE_SYS_WAIT_H
23 #undef _POSIX_C_SOURCE
26 #include "mds/FSMap.h"
27 #include "messages/MFSMap.h"
28 #include "msg/Messenger.h"
29 #include "auth/Auth.h"
30 #include "common/Finisher.h"
31 #include "common/Timer.h"
33 #include "DaemonServer.h"
34 #include "PyModules.h"
36 #include "DaemonState.h"
37 #include "ClusterState.h"
53 Messenger
*client_messenger
;
62 DaemonStateIndex daemon_state
;
63 ClusterState cluster_state
;
68 void load_all_metadata();
75 Mgr(MonClient
*monc_
, Messenger
*clientm_
, Objecter
*objecter_
,
76 Client
*client_
, LogChannelRef clog_
, LogChannelRef audit_clog_
);
79 bool is_initialized() const {return initialized
;}
80 entity_addr_t
get_server_addr() const { return server
.get_myaddr(); }
82 void handle_mgr_digest(MMgrDigest
* m
);
83 void handle_fs_map(MFSMap
* m
);
84 void handle_osd_map();
85 void handle_log(MLog
*m
);
87 bool ms_dispatch(Message
*m
);
91 void background_init();