Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync release collect 24102 #1906

Closed
wants to merge 20 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
66f4817
chore(release) bump collect to 24.10.1
pkippes Nov 5, 2024
9c6c651
chore(release) bump collect to 24.10.1
pkippes Nov 5, 2024
4066eb7
fix(ci): compilation on ci fixed concerning legacy_engine (#1834)
bouda1 Nov 6, 2024
266ee0c
upgrade vcpkg (#1837)
jean-christophe81 Nov 6, 2024
207cf6e
MON-152216 Centreon next 24.10 (Jira release #20183#) (#1829)
pkippes Nov 7, 2024
e51baf4
enh(ci): update pull and push jobs in workflows
tuntoja Oct 31, 2024
fb10c66
enh(ci): refactor get-version workflow (#1777) (#1781)
kduret Nov 4, 2024
aa9cd53
MON-150893 sign agent installer and modifier backport (#1756) (#1770)
jean-christophe81 Nov 5, 2024
eb347f1
retention.dat is not referenced in centreon-collect.yaml, so it's not…
jean-christophe81 Nov 5, 2024
25c7dea
MON-152186 cma improve scheduler and agent native linux check cpu ba…
jean-christophe81 Nov 5, 2024
52c86c4
fix(gorgone): move centreon-common dependency (#1792) (#1822)
kduret Nov 6, 2024
68f8709
fix(ci): remove remaining release type condition (#1839)
kduret Nov 6, 2024
c420308
Mon 152485 windows cpu native check backport 24.10 (#1854)
jean-christophe81 Nov 12, 2024
a37a5b9
Mon 152644 engine coredump (#1859)
sechkem Nov 12, 2024
3c2277d
chore(release) bump collect to 24.10.2
pkippes Nov 14, 2024
475c097
chore(release) bump gorgone to 24.10.1
pkippes Nov 14, 2024
df18ba2
chore(release) bump collect to 24.10.2
pkippes Nov 14, 2024
d72912f
fix(broker/sql): two issues in the mysql object
bouda1 Nov 21, 2024
d675e92
MON-152670 Centreon next 24.10 (Jira release #20192#) (#1857)
pkippes Nov 27, 2024
01cbe4e
Merge branch '24.10.x' into sync-release-collect-24102
pkippes Nov 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .version
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
MAJOR=24.10
MINOR=0
MINOR=2
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ endif()
# Version.
set(COLLECT_MAJOR 24)
set(COLLECT_MINOR 10)
set(COLLECT_PATCH 0)
set(COLLECT_PATCH 2)
set(COLLECT_VERSION "${COLLECT_MAJOR}.${COLLECT_MINOR}.${COLLECT_PATCH}")


Expand Down
14 changes: 4 additions & 10 deletions broker/neb/src/callbacks.cc
Original file line number Diff line number Diff line change
Expand Up @@ -2602,12 +2602,8 @@ int neb::callback_relation(int callback_type, void* data) {
if (relation->hst && relation->dep_hst && !relation->svc &&
!relation->dep_svc) {
// Find host IDs.
int host_id;
int parent_id;
{
host_id = engine::get_host_id(relation->dep_hst->name());
parent_id = engine::get_host_id(relation->hst->name());
}
int host_id = relation->dep_hst->host_id();
int parent_id = relation->hst->host_id();
if (host_id && parent_id) {
// Generate parent event.
auto new_host_parent{std::make_shared<host_parent>()};
Expand Down Expand Up @@ -2658,10 +2654,8 @@ int neb::callback_pb_relation(int callback_type [[maybe_unused]], void* data) {
if (relation->hst && relation->dep_hst && !relation->svc &&
!relation->dep_svc) {
// Find host IDs.
int host_id;
int parent_id;
host_id = engine::get_host_id(relation->dep_hst->name());
parent_id = engine::get_host_id(relation->hst->name());
int host_id = relation->dep_hst->host_id();
int parent_id = relation->hst->host_id();
if (host_id && parent_id) {
// Generate parent event.
auto new_host_parent{std::make_shared<pb_host_parent>()};
Expand Down
12 changes: 4 additions & 8 deletions broker/neb/src/initial.cc
Original file line number Diff line number Diff line change
Expand Up @@ -288,19 +288,15 @@ static void send_host_parents_list(neb_sender sender = neb::callback_relation) {

try {
// Loop through all hosts.
for (host_map::iterator it{com::centreon::engine::host::hosts.begin()},
end{com::centreon::engine::host::hosts.end()};
it != end; ++it) {
for (const auto& [_, sptr_host] : com::centreon::engine::host::hosts) {
// Loop through all parents.
for (host_map_unsafe::iterator pit{it->second->parent_hosts.begin()},
pend{it->second->parent_hosts.end()};
pit != pend; ++pit) {
for (const auto& [_, sptr_host_parent] : sptr_host->parent_hosts) {
// Fill callback struct.
nebstruct_relation_data nsrd;
memset(&nsrd, 0, sizeof(nsrd));
nsrd.type = NEBTYPE_PARENT_ADD;
nsrd.hst = pit->second;
nsrd.dep_hst = it->second.get();
nsrd.hst = sptr_host_parent.get();
nsrd.dep_hst = sptr_host.get();

// Callback.
sender(NEBTYPE_PARENT_ADD, &nsrd);
Expand Down
5 changes: 2 additions & 3 deletions engine/inc/com/centreon/engine/host.hh
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ class host : public notifier {
void set_check_command_ptr(
const std::shared_ptr<commands::command>& cmd) override;

host_map_unsafe parent_hosts;
host_map parent_hosts;
host_map_unsafe child_hosts;
static host_map hosts;
static host_id_map hosts_by_id;
Expand Down Expand Up @@ -309,6 +309,7 @@ int number_of_total_parent_hosts(com::centreon::engine::host* hst);
std::ostream& operator<<(std::ostream& os,
com::centreon::engine::host const& obj);
std::ostream& operator<<(std::ostream& os, host_map_unsafe const& obj);
std::ostream& operator<<(std::ostream& os, host_map const& obj);

namespace com::centreon::engine {

Expand All @@ -320,6 +321,4 @@ std::string get_host_name(const uint64_t host_id);

} // namespace com::centreon::engine

std::ostream& operator<<(std::ostream& os, host_map_unsafe const& obj);

#endif // !CCE_HOST_HH
14 changes: 6 additions & 8 deletions engine/src/command_manager.cc
Original file line number Diff line number Diff line change
Expand Up @@ -411,19 +411,17 @@ void command_manager::schedule_and_propagate_downtime(
unsigned long triggered_by,
unsigned long duration) {
/* check all child hosts... */
for (host_map_unsafe::iterator it(temp_host->child_hosts.begin()),
end(temp_host->child_hosts.end());
it != end; ++it) {
if (it->second == nullptr)
for (const auto& [_, ptr_host] : temp_host->child_hosts) {
if (ptr_host == nullptr)
continue;
/* recurse... */
schedule_and_propagate_downtime(it->second, entry_time, author,
comment_data, start_time, end_time, fixed,
triggered_by, duration);
schedule_and_propagate_downtime(ptr_host, entry_time, author, comment_data,
start_time, end_time, fixed, triggered_by,
duration);

/* schedule downtime for this host */
downtime_manager::instance().schedule_downtime(
downtime::host_downtime, it->second->host_id(), 0, entry_time, author,
downtime::host_downtime, ptr_host->host_id(), 0, entry_time, author,
comment_data, start_time, end_time, fixed, triggered_by, duration,
nullptr);
}
Expand Down
50 changes: 20 additions & 30 deletions engine/src/commands/commands.cc
Original file line number Diff line number Diff line change
Expand Up @@ -2444,28 +2444,24 @@ void enable_and_propagate_notifications(host* hst,
enable_host_notifications(hst);

/* check all child hosts... */
for (host_map_unsafe::iterator it(hst->child_hosts.begin()),
end(hst->child_hosts.end());
it != end; ++it) {
if (it->second == nullptr)
for (const auto& [_, ptr_host] : hst->child_hosts) {
if (ptr_host == nullptr)
continue;

/* recurse... */
enable_and_propagate_notifications(it->second, level + 1, affect_top_host,
enable_and_propagate_notifications(ptr_host, level + 1, affect_top_host,
affect_hosts, affect_services);

/* enable notifications for this host */
if (affect_hosts)
enable_host_notifications(it->second);
enable_host_notifications(ptr_host);

/* enable notifications for all services on this host... */
if (affect_services) {
for (service_map_unsafe::iterator it2(it->second->services.begin()),
end2(it->second->services.end());
it2 != end2; ++it2) {
if (!it2->second)
for (const auto& [_, ptr_srv] : ptr_host->services) {
if (!ptr_srv)
continue;
enable_service_notifications(it2->second);
enable_service_notifications(ptr_srv);
}
}
}
Expand All @@ -2485,28 +2481,24 @@ void disable_and_propagate_notifications(host* hst,
disable_host_notifications(hst);

/* check all child hosts... */
for (host_map_unsafe::iterator it(hst->child_hosts.begin()),
end(hst->child_hosts.begin());
it != end; ++it) {
if (!it->second)
for (const auto& [_, ptr_host] : hst->child_hosts) {
if (!ptr_host)
continue;

/* recurse... */
disable_and_propagate_notifications(it->second, level + 1, affect_top_host,
disable_and_propagate_notifications(ptr_host, level + 1, affect_top_host,
affect_hosts, affect_services);

/* disable notifications for this host */
if (affect_hosts)
disable_host_notifications(it->second);
disable_host_notifications(ptr_host);

/* disable notifications for all services on this host... */
if (affect_services) {
for (service_map_unsafe::iterator it2(it->second->services.begin()),
end2(it->second->services.end());
it2 != end2; ++it2) {
if (!it2->second)
for (const auto& [_, ptr_srv] : ptr_host->services) {
if (!ptr_srv)
continue;
disable_service_notifications(it2->second);
disable_service_notifications(ptr_srv);
}
}
}
Expand Down Expand Up @@ -2627,20 +2619,18 @@ void schedule_and_propagate_downtime(host* temp_host,
unsigned long triggered_by,
unsigned long duration) {
/* check all child hosts... */
for (host_map_unsafe::iterator it(temp_host->child_hosts.begin()),
end(temp_host->child_hosts.end());
it != end; ++it) {
if (it->second == nullptr)
for (const auto& [_, ptr_host] : temp_host->child_hosts) {
if (ptr_host == nullptr)
continue;

/* recurse... */
schedule_and_propagate_downtime(it->second, entry_time, author,
comment_data, start_time, end_time, fixed,
triggered_by, duration);
schedule_and_propagate_downtime(ptr_host, entry_time, author, comment_data,
start_time, end_time, fixed, triggered_by,
duration);

/* schedule downtime for this host */
downtime_manager::instance().schedule_downtime(
downtime::host_downtime, it->second->host_id(), 0, entry_time, author,
downtime::host_downtime, ptr_host->host_id(), 0, entry_time, author,
comment_data, start_time, end_time, fixed, triggered_by, duration,
nullptr);
}
Expand Down
12 changes: 5 additions & 7 deletions engine/src/config.cc
Original file line number Diff line number Diff line change
Expand Up @@ -63,19 +63,17 @@ static int dfs_host_path(host* root) {
dfs_set_status(root, DFS_TEMP_CHECKED);

/* We are scanning the children */
for (host_map_unsafe::iterator it(root->child_hosts.begin()),
end(root->child_hosts.end());
it != end; it++) {
int child_status = dfs_get_status(it->second);
for (const auto& [_, ptr_host] : root->child_hosts) {
int child_status = dfs_get_status(ptr_host);

/* If a child is not checked, check it */
if (child_status == DFS_UNCHECKED)
child_status = dfs_host_path(it->second);
child_status = dfs_host_path(ptr_host);

/* If a child already temporary checked, its a problem,
* loop inside, and its a acked status */
if (child_status == DFS_TEMP_CHECKED) {
dfs_set_status(it->second, DFS_LOOPY);
dfs_set_status(ptr_host, DFS_LOOPY);
dfs_set_status(root, DFS_LOOPY);
}

Expand All @@ -86,7 +84,7 @@ static int dfs_host_path(host* root) {
dfs_set_status(root, DFS_NEAR_LOOP);

/* we already saw this child, it's a problem */
dfs_set_status(it->second, DFS_LOOPY);
dfs_set_status(ptr_host, DFS_LOOPY);
}
}

Expand Down
35 changes: 19 additions & 16 deletions engine/src/configuration/applier/host.cc
Original file line number Diff line number Diff line change
Expand Up @@ -482,10 +482,8 @@ void applier::host::modify_object(configuration::host const& obj) {
if (obj.parents() != obj_old.parents()) {
// Delete old parents.
{
for (host_map_unsafe::iterator it(it_obj->second->parent_hosts.begin()),
end(it_obj->second->parent_hosts.end());
it != end; it++)
broker_relation_data(NEBTYPE_PARENT_DELETE, it->second, nullptr,
for (const auto& [_, sptr_host] : it_obj->second->parent_hosts)
broker_relation_data(NEBTYPE_PARENT_DELETE, sptr_host.get(), nullptr,
it_obj->second.get(), nullptr);
}
it_obj->second->parent_hosts.clear();
Expand Down Expand Up @@ -727,10 +725,9 @@ void applier::host::modify_object(configuration::Host* old_obj,

if (parents_changed) {
// Delete old parents.
for (auto it = h->parent_hosts.begin(), end = h->parent_hosts.end();
it != end; it++)
broker_relation_data(NEBTYPE_PARENT_DELETE, it->second, nullptr, h.get(),
nullptr);
for (const auto& [_, sptr_host] : h->parent_hosts)
broker_relation_data(NEBTYPE_PARENT_DELETE, sptr_host.get(), nullptr,
h.get(), nullptr);
h->parent_hosts.clear();

// Create parents.
Expand Down Expand Up @@ -787,6 +784,11 @@ void applier::host::remove_object(configuration::host const& obj) {
for (auto& it_h : it->second->get_parent_groups())
it_h->members.erase(it->second->name());

// remove any relations
for (const auto& [_, sptr_host] : it->second->parent_hosts)
broker_relation_data(NEBTYPE_PARENT_DELETE, sptr_host.get(), nullptr,
it->second.get(), nullptr);

// Notify event broker.
for (auto it_s = it->second->services.begin();
it_s != it->second->services.end(); ++it_s)
Expand Down Expand Up @@ -833,6 +835,11 @@ void applier::host::remove_object(ssize_t idx) {
for (auto& it_h : it->second->get_parent_groups())
it_h->members.erase(it->second->name());

// remove any relations
for (const auto& [_, sptr_host] : it->second->parent_hosts)
broker_relation_data(NEBTYPE_PARENT_DELETE, sptr_host.get(), nullptr,
it->second.get(), nullptr);

// Notify event broker.
for (auto it_s = it->second->services.begin();
it_s != it->second->services.end(); ++it_s)
Expand Down Expand Up @@ -870,10 +877,8 @@ void applier::host::resolve_object(const configuration::host& obj,
// It is necessary to do it only once to prevent the removal
// of valid child backlinks.
if (obj == *config->hosts().begin()) {
for (host_map::iterator it(engine::host::hosts.begin()),
end(engine::host::hosts.end());
it != end; ++it)
it->second->child_hosts.clear();
for (const auto& [_, sptr_host] : engine::host::hosts)
sptr_host->child_hosts.clear();
}

// Find host.
Expand Down Expand Up @@ -911,10 +916,8 @@ void applier::host::resolve_object(const configuration::Host& obj,
// It is necessary to do it only once to prevent the removal
// of valid child backlinks.
if (&obj == &(*pb_config.hosts().begin())) {
for (host_map::iterator it(engine::host::hosts.begin()),
end(engine::host::hosts.end());
it != end; ++it)
it->second->child_hosts.clear();
for (const auto& [_, sptr_host] : engine::host::hosts)
sptr_host->child_hosts.clear();
}

// Find host.
Expand Down
Loading
Loading