From 9495816cb7d7720d96a6c38887b13388fe4a274c Mon Sep 17 00:00:00 2001 From: Tanguy Leroux Date: Fri, 3 Jul 2015 10:32:01 +0200 Subject: [PATCH] Remove sigar completely --- core/bin/elasticsearch.in.bat | 2 +- core/bin/elasticsearch.in.sh | 2 +- core/licenses/sigar-1.6.4.jar.sha1 | 1 - core/licenses/sigar-LICENSE.txt | 201 ------------------ core/licenses/sigar-NOTICE.txt | 117 ---------- core/pom.xml | 31 +-- core/src/main/assemblies/common-bin.xml | 8 - .../elasticsearch/bootstrap/Bootstrap.java | 18 +- .../elasticsearch/monitor/MonitorModule.java | 35 +-- .../monitor/fs/SigarFsProbe.java | 106 --------- .../monitor/network/SigarNetworkProbe.java | 166 --------------- .../monitor/os/SigarOsProbe.java | 133 ------------ .../monitor/process/SigarProcessProbe.java | 81 ------- .../monitor/sigar/SigarService.java | 67 ------ .../cluster/stats/ClusterStatsTests.java | 9 +- .../mapping/ManyMappingsBenchmark.java | 2 +- .../recovery/ReplicaRecoveryBenchmark.java | 2 +- .../aggregations/GlobalOrdinalsBenchmark.java | 2 +- ...AggregationSearchCollectModeBenchmark.java | 2 +- ...AggregationSearchAndIndexingBenchmark.java | 2 +- .../TermsAggregationSearchBenchmark.java | 2 +- .../bootstrap/BootstrapForTesting.java | 4 +- .../org/elasticsearch/monitor/SigarTests.java | 42 ---- .../test/InternalTestCluster.java | 1 - dev-tools/ElasticSearch.launch | 2 +- plugins/pom.xml | 5 - pom.xml | 19 -- 27 files changed, 20 insertions(+), 1042 deletions(-) delete mode 100644 core/licenses/sigar-1.6.4.jar.sha1 delete mode 100644 core/licenses/sigar-LICENSE.txt delete mode 100644 core/licenses/sigar-NOTICE.txt delete mode 100644 core/src/main/java/org/elasticsearch/monitor/fs/SigarFsProbe.java delete mode 100644 core/src/main/java/org/elasticsearch/monitor/network/SigarNetworkProbe.java delete mode 100644 core/src/main/java/org/elasticsearch/monitor/os/SigarOsProbe.java delete mode 100644 core/src/main/java/org/elasticsearch/monitor/process/SigarProcessProbe.java delete mode 100644 core/src/main/java/org/elasticsearch/monitor/sigar/SigarService.java delete mode 100644 core/src/test/java/org/elasticsearch/monitor/SigarTests.java diff --git a/core/bin/elasticsearch.in.bat b/core/bin/elasticsearch.in.bat index 91a731e8260..b25a679fc9e 100644 --- a/core/bin/elasticsearch.in.bat +++ b/core/bin/elasticsearch.in.bat @@ -88,7 +88,7 @@ set JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8 REM Use our provided JNA always versus the system one set JAVA_OPTS=%JAVA_OPTS% -Djna.nosys=true -set CORE_CLASSPATH=%ES_HOME%/lib/${project.build.finalName}.jar;%ES_HOME%/lib/*;%ES_HOME%/lib/sigar/* +set CORE_CLASSPATH=%ES_HOME%/lib/${project.build.finalName}.jar;%ES_HOME%/lib/* if "%ES_CLASSPATH%" == "" ( set ES_CLASSPATH=%CORE_CLASSPATH% ) else ( diff --git a/core/bin/elasticsearch.in.sh b/core/bin/elasticsearch.in.sh index 9e1c8d9d42e..92eab40307e 100644 --- a/core/bin/elasticsearch.in.sh +++ b/core/bin/elasticsearch.in.sh @@ -1,6 +1,6 @@ #!/bin/sh -CORE_CLASSPATH="$ES_HOME/lib/${project.build.finalName}.jar:$ES_HOME/lib/*:$ES_HOME/lib/sigar/*" +CORE_CLASSPATH="$ES_HOME/lib/${project.build.finalName}.jar:$ES_HOME/lib/*" if [ "x$ES_CLASSPATH" = "x" ]; then ES_CLASSPATH="$CORE_CLASSPATH" diff --git a/core/licenses/sigar-1.6.4.jar.sha1 b/core/licenses/sigar-1.6.4.jar.sha1 deleted file mode 100644 index 8cfa355b9f6..00000000000 --- a/core/licenses/sigar-1.6.4.jar.sha1 +++ /dev/null @@ -1 +0,0 @@ -e91a355d337a0b1991f54181627d63c9973624c3 diff --git a/core/licenses/sigar-LICENSE.txt b/core/licenses/sigar-LICENSE.txt deleted file mode 100644 index 11069edd790..00000000000 --- a/core/licenses/sigar-LICENSE.txt +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - -TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - -1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - -2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - -3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - -4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - -5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - -6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - -7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - -8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - -9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - -END OF TERMS AND CONDITIONS - -APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - -Copyright [yyyy] [name of copyright owner] - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/core/licenses/sigar-NOTICE.txt b/core/licenses/sigar-NOTICE.txt deleted file mode 100644 index c184394d05d..00000000000 --- a/core/licenses/sigar-NOTICE.txt +++ /dev/null @@ -1,117 +0,0 @@ -Copyright (c) 2004-2011 VMware, Inc. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - -http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. - -ADDITIONAL LICENSE INFORMATION: - -Hyperic SIGAR includes some third-party open source components -in its distribution. The list below identifies the community or -organization and links to their appropriate license terms. - -The Hyperic team would like to thank all the communities -of the projects listed below for their contributions. - ----------------------------------------------------------- -Components under the Apache License 2.0: ----------------------------------------------------------- - -The following components are included without modification: - -- log4j - -Information: http://logging.apache.org/ -License: http://www.apache.org/licenses/LICENSE-2.0 - -The following components are included with modification: - -- cpptasks - -Information: http://ant-contrib.sourceforge.net/ -License: http://www.apache.org/licenses/LICENSE-2.0 - -- (portions of) APR - -Information: http://apr.apache.org/ -License: http://www.apache.org/licenses/LICENSE-2.0 - ----------------------------------------------------------- -Components under BSD/MIT Style Licenses: ----------------------------------------------------------- - -The following components are included with modification: - -- solaris get_mib2 - -Information: ftp://vic.cc.purdue.edu/pub/tools/unix/solaris/get_mib2/ -License: within src/os/solaris/get_mib2.[ch] - -Copyright 1995 Purdue Research Foundation, West Lafayette, Indiana -47907. All rights reserved. - -Written by Victor A. Abell - -This software is not subject to any license of the American Telephone -and Telegraph Company or the Regents of the University of California. - -Permission is granted to anyone to use this software for any purpose on -any computer system, and to alter it and redistribute it freely, subject -to the following restrictions: - -1. Neither Victor A Abell nor Purdue University are responsible for - any consequences of the use of this software. - -2. The origin of this software must not be misrepresented, either by - explicit claim or by omission. Credit to Victor A. Abell and Purdue - University must appear in documentation and sources. - -3. Altered versions must be plainly marked as such, and must not be - misrepresented as being the original software. - -4. This notice may not be removed or altered. - -- getline by Chris Thewalt - -Information: http://tinyurl.com/r438r -License: within src/sigar_getline.c - -Copyright (C) 1991, 1992 by Chris Thewalt (thewalt@ce.berkeley.edu) - -Permission to use, copy, modify, and distribute this software -for any purpose and without fee is hereby granted, provided -that the above copyright notices appear in all copies and that both the -copyright notice and this permission notice appear in supporting -documentation. This software is provided "as is" without express or -implied warranty. - -- PrintfFormat.java - -Information: http://java.sun.com/developer/technicalArticles/Programming/sprintf/PrintfFormat.java -License: within bindings/java/src/org/hyperic/sigar/util/PrintfFormat.java - -(c) 2000 Sun Microsystems, Inc. -ALL RIGHTS RESERVED - -License Grant- - -Permission to use, copy, modify, and distribute this Software and its -documentation for NON-COMMERCIAL or COMMERCIAL purposes and without fee is -hereby granted. - -This Software is provided "AS IS". All express warranties, including any -implied warranty of merchantability, satisfactory quality, fitness for a -particular purpose, or non-infringement, are disclaimed, except to the extent -that such disclaimers are held to be legally invalid. - -You acknowledge that Software is not designed, licensed or intended for use in -the design, construction, operation or maintenance of any nuclear facility -("High Risk Activities"). Sun disclaims any express or implied warranty of -fitness for such uses. - -Please refer to the file http://www.sun.com/policies/trademarks/ for further -important trademark information and to -http://java.sun.com/nav/business/index.html for further important licensing -information for the Java Technology. diff --git a/core/pom.xml b/core/pom.xml index 7a5f1a631f0..300cf5fddb7 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -214,11 +214,6 @@ jna true - - org.fusesource - sigar - true - @@ -708,20 +703,9 @@ root - - ${project.basedir}/lib/sigar/ - sigar-*.jar, libsigar-*-linux.* - directory - - perm - ${packaging.elasticsearch.home.dir}/lib/sigar - root - root - - ${project.build.directory}/lib - ${project.build.finalName}-shaded.jar,${project.build.finalName}-sources.jar,${project.build.finalName}-tests.jar,${project.build.finalName}-test-sources.jar,slf4j-api-*.jar,sigar-*.jar + ${project.build.finalName}-shaded.jar,${project.build.finalName}-sources.jar,${project.build.finalName}-tests.jar,${project.build.finalName}-test-sources.jar,slf4j-api-*.jar directory perm @@ -889,7 +873,6 @@ ${project.build.finalName}-tests.jar ${project.build.finalName}-test-sources.jar slf4j-api-*.jar - sigar-*.jar @@ -900,18 +883,6 @@ - - ${packaging.elasticsearch.home.dir}/lib/sigar - - - lib/sigar - - sigar*.jar - libsigar-*-linux.* - - - - /etc/init.d diff --git a/core/src/main/assemblies/common-bin.xml b/core/src/main/assemblies/common-bin.xml index d5a19ba37ed..dafd901aecd 100644 --- a/core/src/main/assemblies/common-bin.xml +++ b/core/src/main/assemblies/common-bin.xml @@ -77,14 +77,6 @@ plugin - - - lib/sigar - lib/sigar - - * - - diff --git a/core/src/main/java/org/elasticsearch/bootstrap/Bootstrap.java b/core/src/main/java/org/elasticsearch/bootstrap/Bootstrap.java index 0d8ef345336..006d55edaee 100644 --- a/core/src/main/java/org/elasticsearch/bootstrap/Bootstrap.java +++ b/core/src/main/java/org/elasticsearch/bootstrap/Bootstrap.java @@ -44,7 +44,6 @@ import org.elasticsearch.monitor.process.JmxProcessProbe; import org.elasticsearch.node.Node; import org.elasticsearch.node.NodeBuilder; import org.elasticsearch.node.internal.InternalSettingsPreparer; -import org.hyperic.sigar.Sigar; import java.io.IOException; import java.lang.reflect.Method; @@ -97,7 +96,7 @@ public class Bootstrap { } /** initialize native resources */ - public static void initializeNatives(boolean mlockAll, boolean ctrlHandler, boolean loadSigar) { + public static void initializeNatives(boolean mlockAll, boolean ctrlHandler) { final ESLogger logger = Loggers.getLogger(Bootstrap.class); // check if the user is running as root, and bail @@ -140,18 +139,6 @@ public class Bootstrap { // we've already logged this. } - if (loadSigar) { - // initialize sigar explicitly - try { - Sigar.load(); - logger.trace("sigar libraries loaded successfully"); - } catch (Throwable t) { - logger.trace("failed to load sigar libraries", t); - } - } else { - logger.trace("sigar not loaded, disabled via settings"); - } - // init lucene random seed. it will use /dev/urandom where available: StringHelper.randomId(); } @@ -162,8 +149,7 @@ public class Bootstrap { private void setup(boolean addShutdownHook, Settings settings, Environment environment) throws Exception { initializeNatives(settings.getAsBoolean("bootstrap.mlockall", false), - settings.getAsBoolean("bootstrap.ctrlhandler", true), - settings.getAsBoolean("bootstrap.sigar", true)); + settings.getAsBoolean("bootstrap.ctrlhandler", true)); if (addShutdownHook) { Runtime.getRuntime().addShutdownHook(new Thread() { diff --git a/core/src/main/java/org/elasticsearch/monitor/MonitorModule.java b/core/src/main/java/org/elasticsearch/monitor/MonitorModule.java index 23a64ccabb0..a5b9118e9a5 100644 --- a/core/src/main/java/org/elasticsearch/monitor/MonitorModule.java +++ b/core/src/main/java/org/elasticsearch/monitor/MonitorModule.java @@ -20,27 +20,21 @@ package org.elasticsearch.monitor; import org.elasticsearch.common.inject.AbstractModule; -import org.elasticsearch.common.logging.Loggers; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.monitor.fs.FsProbe; import org.elasticsearch.monitor.fs.FsService; import org.elasticsearch.monitor.fs.JmxFsProbe; -import org.elasticsearch.monitor.fs.SigarFsProbe; import org.elasticsearch.monitor.jvm.JvmMonitorService; import org.elasticsearch.monitor.jvm.JvmService; import org.elasticsearch.monitor.network.JmxNetworkProbe; import org.elasticsearch.monitor.network.NetworkProbe; import org.elasticsearch.monitor.network.NetworkService; -import org.elasticsearch.monitor.network.SigarNetworkProbe; import org.elasticsearch.monitor.os.JmxOsProbe; import org.elasticsearch.monitor.os.OsProbe; import org.elasticsearch.monitor.os.OsService; -import org.elasticsearch.monitor.os.SigarOsProbe; import org.elasticsearch.monitor.process.JmxProcessProbe; import org.elasticsearch.monitor.process.ProcessProbe; import org.elasticsearch.monitor.process.ProcessService; -import org.elasticsearch.monitor.process.SigarProcessProbe; -import org.elasticsearch.monitor.sigar.SigarService; /** * @@ -59,29 +53,12 @@ public class MonitorModule extends AbstractModule { @Override protected void configure() { - boolean sigarLoaded = false; - try { - settings.getClassLoader().loadClass("org.hyperic.sigar.Sigar"); - SigarService sigarService = new SigarService(settings); - if (sigarService.sigarAvailable()) { - bind(SigarService.class).toInstance(sigarService); - bind(ProcessProbe.class).to(SigarProcessProbe.class).asEagerSingleton(); - bind(OsProbe.class).to(SigarOsProbe.class).asEagerSingleton(); - bind(NetworkProbe.class).to(SigarNetworkProbe.class).asEagerSingleton(); - bind(FsProbe.class).to(SigarFsProbe.class).asEagerSingleton(); - sigarLoaded = true; - } - } catch (Throwable e) { - // no sigar - Loggers.getLogger(SigarService.class).trace("failed to load sigar", e); - } - if (!sigarLoaded) { - // bind non sigar implementations - bind(ProcessProbe.class).to(JmxProcessProbe.class).asEagerSingleton(); - bind(OsProbe.class).to(JmxOsProbe.class).asEagerSingleton(); - bind(NetworkProbe.class).to(JmxNetworkProbe.class).asEagerSingleton(); - bind(FsProbe.class).to(JmxFsProbe.class).asEagerSingleton(); - } + // bind default implementations + bind(ProcessProbe.class).to(JmxProcessProbe.class).asEagerSingleton(); + bind(OsProbe.class).to(JmxOsProbe.class).asEagerSingleton(); + bind(NetworkProbe.class).to(JmxNetworkProbe.class).asEagerSingleton(); + bind(FsProbe.class).to(JmxFsProbe.class).asEagerSingleton(); + // bind other services bind(ProcessService.class).asEagerSingleton(); bind(OsService.class).asEagerSingleton(); diff --git a/core/src/main/java/org/elasticsearch/monitor/fs/SigarFsProbe.java b/core/src/main/java/org/elasticsearch/monitor/fs/SigarFsProbe.java deleted file mode 100644 index 38625dee111..00000000000 --- a/core/src/main/java/org/elasticsearch/monitor/fs/SigarFsProbe.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Licensed to Elasticsearch under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.elasticsearch.monitor.fs; - -import com.google.common.collect.Maps; -import org.elasticsearch.common.component.AbstractComponent; -import org.elasticsearch.common.inject.Inject; -import org.elasticsearch.common.settings.Settings; -import org.elasticsearch.env.NodeEnvironment; -import org.elasticsearch.env.NodeEnvironment.NodePath; -import org.elasticsearch.monitor.sigar.SigarService; -import org.hyperic.sigar.FileSystem; -import org.hyperic.sigar.FileSystemMap; -import org.hyperic.sigar.FileSystemUsage; -import org.hyperic.sigar.Sigar; -import org.hyperic.sigar.SigarException; - -import java.nio.file.Path; -import java.util.Map; - -public class SigarFsProbe extends AbstractComponent implements FsProbe { - - private final NodeEnvironment nodeEnv; - - private final SigarService sigarService; - - private Map fileSystems = Maps.newHashMap(); - - @Inject - public SigarFsProbe(Settings settings, NodeEnvironment nodeEnv, SigarService sigarService) { - super(settings); - this.nodeEnv = nodeEnv; - this.sigarService = sigarService; - } - - @Override - public synchronized FsStats stats() { - if (!nodeEnv.hasNodeFile()) { - return new FsStats(System.currentTimeMillis(), new FsStats.Info[0]); - } - NodePath[] nodePaths = nodeEnv.nodePaths(); - FsStats.Info[] infos = new FsStats.Info[nodePaths.length]; - for (int i = 0; i < nodePaths.length; i++) { - NodePath nodePath = nodePaths[i]; - Path dataLocation = nodePath.path; - - FsStats.Info info = new FsStats.Info(); - info.path = dataLocation.toAbsolutePath().toString(); - - try { - FileSystem fileSystem = fileSystems.get(dataLocation); - Sigar sigar = sigarService.sigar(); - if (fileSystem == null) { - FileSystemMap fileSystemMap = sigar.getFileSystemMap(); - if (fileSystemMap != null) { - fileSystem = fileSystemMap.getMountPoint(dataLocation.toAbsolutePath().toString()); - fileSystems.put(dataLocation, fileSystem); - } - } - if (fileSystem != null) { - info.mount = fileSystem.getDirName(); - info.dev = fileSystem.getDevName(); - info.type = fileSystem.getSysTypeName(); - info.spins = nodePath.spins; - - FileSystemUsage fileSystemUsage = sigar.getFileSystemUsage(fileSystem.getDirName()); - if (fileSystemUsage != null) { - // total/free/available seem to be in megabytes? - info.total = fileSystemUsage.getTotal() * 1024; - info.free = fileSystemUsage.getFree() * 1024; - info.available = fileSystemUsage.getAvail() * 1024; - info.diskReads = fileSystemUsage.getDiskReads(); - info.diskWrites = fileSystemUsage.getDiskWrites(); - info.diskReadBytes = fileSystemUsage.getDiskReadBytes(); - info.diskWriteBytes = fileSystemUsage.getDiskWriteBytes(); - info.diskQueue = fileSystemUsage.getDiskQueue(); - info.diskServiceTime = fileSystemUsage.getDiskServiceTime(); - } - } - } catch (SigarException e) { - // failed... - } - - infos[i] = info; - } - - return new FsStats(System.currentTimeMillis(), infos); - } -} diff --git a/core/src/main/java/org/elasticsearch/monitor/network/SigarNetworkProbe.java b/core/src/main/java/org/elasticsearch/monitor/network/SigarNetworkProbe.java deleted file mode 100644 index 35be3504891..00000000000 --- a/core/src/main/java/org/elasticsearch/monitor/network/SigarNetworkProbe.java +++ /dev/null @@ -1,166 +0,0 @@ -/* - * Licensed to Elasticsearch under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.elasticsearch.monitor.network; - -import org.elasticsearch.common.component.AbstractComponent; -import org.elasticsearch.common.inject.Inject; -import org.elasticsearch.common.settings.Settings; -import org.elasticsearch.monitor.sigar.SigarService; -import org.hyperic.sigar.*; - -/** - * - */ -public class SigarNetworkProbe extends AbstractComponent implements NetworkProbe { - - private final SigarService sigarService; - - @Inject - public SigarNetworkProbe(Settings settings, SigarService sigarService) { - super(settings); - this.sigarService = sigarService; - } - - @Override - public NetworkInfo networkInfo() { - Sigar sigar = sigarService.sigar(); - - NetworkInfo networkInfo = new NetworkInfo(); - - try { - NetInterfaceConfig netInterfaceConfig = sigar.getNetInterfaceConfig(null); - networkInfo.primary = new NetworkInfo.Interface(netInterfaceConfig.getName(), netInterfaceConfig.getAddress(), netInterfaceConfig.getHwaddr()); - } catch (SigarException e) { - // ignore - } - - return networkInfo; - } - - @Override - public synchronized NetworkStats networkStats() { - Sigar sigar = sigarService.sigar(); - - NetworkStats stats = new NetworkStats(); - stats.timestamp = System.currentTimeMillis(); - - try { - Tcp tcp = sigar.getTcp(); - stats.tcp = new NetworkStats.Tcp(); - stats.tcp.activeOpens = tcp.getActiveOpens(); - stats.tcp.passiveOpens = tcp.getPassiveOpens(); - stats.tcp.attemptFails = tcp.getAttemptFails(); - stats.tcp.estabResets = tcp.getEstabResets(); - stats.tcp.currEstab = tcp.getCurrEstab(); - stats.tcp.inSegs = tcp.getInSegs(); - stats.tcp.outSegs = tcp.getOutSegs(); - stats.tcp.retransSegs = tcp.getRetransSegs(); - stats.tcp.inErrs = tcp.getInErrs(); - stats.tcp.outRsts = tcp.getOutRsts(); - } catch (SigarException e) { - // ignore - } - - return stats; - } - - @Override - public String ifconfig() { - Sigar sigar = sigarService.sigar(); - StringBuilder sb = new StringBuilder(); - try { - for (String ifname : sigar.getNetInterfaceList()) { - NetInterfaceConfig ifconfig = null; - try { - ifconfig = sigar.getNetInterfaceConfig(ifname); - } catch (SigarException e) { - sb.append(ifname + "\t" + "Not Avaialbe [" + e.getMessage() + "]"); - continue; - } - long flags = ifconfig.getFlags(); - - String hwaddr = ""; - if (!NetFlags.NULL_HWADDR.equals(ifconfig.getHwaddr())) { - hwaddr = " HWaddr " + ifconfig.getHwaddr(); - } - - if (!ifconfig.getName().equals(ifconfig.getDescription())) { - sb.append(ifconfig.getDescription()).append('\n'); - } - - sb.append(ifconfig.getName() + "\t" + "Link encap:" + ifconfig.getType() + hwaddr).append('\n'); - - String ptp = ""; - if ((flags & NetFlags.IFF_POINTOPOINT) > 0) { - ptp = " P-t-P:" + ifconfig.getDestination(); - } - - String bcast = ""; - if ((flags & NetFlags.IFF_BROADCAST) > 0) { - bcast = " Bcast:" + ifconfig.getBroadcast(); - } - - sb.append("\t" + - "inet addr:" + ifconfig.getAddress() + - ptp + //unlikely - bcast + - " Mask:" + ifconfig.getNetmask()).append('\n'); - - sb.append("\t" + - NetFlags.getIfFlagsString(flags) + - " MTU:" + ifconfig.getMtu() + - " Metric:" + ifconfig.getMetric()).append('\n'); - try { - NetInterfaceStat ifstat = sigar.getNetInterfaceStat(ifname); - - sb.append("\t" + - "RX packets:" + ifstat.getRxPackets() + - " errors:" + ifstat.getRxErrors() + - " dropped:" + ifstat.getRxDropped() + - " overruns:" + ifstat.getRxOverruns() + - " frame:" + ifstat.getRxFrame()).append('\n'); - - sb.append("\t" + - "TX packets:" + ifstat.getTxPackets() + - " errors:" + ifstat.getTxErrors() + - " dropped:" + ifstat.getTxDropped() + - " overruns:" + ifstat.getTxOverruns() + - " carrier:" + ifstat.getTxCarrier()).append('\n'); - sb.append("\t" + "collisions:" + - ifstat.getTxCollisions()).append('\n'); - - long rxBytes = ifstat.getRxBytes(); - long txBytes = ifstat.getTxBytes(); - - sb.append("\t" + - "RX bytes:" + rxBytes + - " (" + Sigar.formatSize(rxBytes) + ")" + - " " + - "TX bytes:" + txBytes + - " (" + Sigar.formatSize(txBytes) + ")").append('\n'); - } catch (SigarException e) { - } - } - return sb.toString(); - } catch (SigarException e) { - return "NA"; - } - } -} diff --git a/core/src/main/java/org/elasticsearch/monitor/os/SigarOsProbe.java b/core/src/main/java/org/elasticsearch/monitor/os/SigarOsProbe.java deleted file mode 100644 index 87f00199c82..00000000000 --- a/core/src/main/java/org/elasticsearch/monitor/os/SigarOsProbe.java +++ /dev/null @@ -1,133 +0,0 @@ -/* - * Licensed to Elasticsearch under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.elasticsearch.monitor.os; - -import org.elasticsearch.common.component.AbstractComponent; -import org.elasticsearch.common.inject.Inject; -import org.elasticsearch.common.settings.Settings; -import org.elasticsearch.monitor.sigar.SigarService; -import org.hyperic.sigar.*; - -/** - * - */ -public class SigarOsProbe extends AbstractComponent implements OsProbe { - - private final SigarService sigarService; - - @Inject - public SigarOsProbe(Settings settings, SigarService sigarService) { - super(settings); - this.sigarService = sigarService; - } - - @Override - public OsInfo osInfo() { - Sigar sigar = sigarService.sigar(); - OsInfo info = new OsInfo(); - try { - CpuInfo[] infos = sigar.getCpuInfoList(); - info.cpu = new OsInfo.Cpu(); - info.cpu.vendor = infos[0].getVendor(); - info.cpu.model = infos[0].getModel(); - info.cpu.mhz = infos[0].getMhz(); - info.cpu.totalCores = infos[0].getTotalCores(); - info.cpu.totalSockets = infos[0].getTotalSockets(); - info.cpu.coresPerSocket = infos[0].getCoresPerSocket(); - if (infos[0].getCacheSize() != Sigar.FIELD_NOTIMPL) { - info.cpu.cacheSize = infos[0].getCacheSize(); - } - } catch (SigarException e) { - // ignore - } - - try { - Mem mem = sigar.getMem(); - info.mem = new OsInfo.Mem(); - info.mem.total = mem.getTotal(); - } catch (SigarException e) { - // ignore - } - - try { - Swap swap = sigar.getSwap(); - info.swap = new OsInfo.Swap(); - info.swap.total = swap.getTotal(); - } catch (SigarException e) { - // ignore - } - - - return info; - } - - @Override - public OsStats osStats() { - Sigar sigar = sigarService.sigar(); - OsStats stats = new OsStats(); - stats.timestamp = System.currentTimeMillis(); - try { - stats.loadAverage = sigar.getLoadAverage(); - } catch (SigarException e) { - // ignore - } - - try { - stats.uptime = (long) sigar.getUptime().getUptime(); - } catch (SigarException e) { - // ignore - } - - try { - CpuPerc cpuPerc = sigar.getCpuPerc(); - stats.cpu = new OsStats.Cpu(); - stats.cpu.sys = (short) (cpuPerc.getSys() * 100); - stats.cpu.user = (short) (cpuPerc.getUser() * 100); - stats.cpu.idle = (short) (cpuPerc.getIdle() * 100); - stats.cpu.stolen = (short) (cpuPerc.getStolen() * 100); - } catch (SigarException e) { - // ignore - } - - try { - Mem mem = sigar.getMem(); - stats.mem = new OsStats.Mem(); - stats.mem.free = mem.getFree(); - stats.mem.freePercent = (short) mem.getFreePercent(); - stats.mem.used = mem.getUsed(); - stats.mem.usedPercent = (short) mem.getUsedPercent(); - stats.mem.actualFree = mem.getActualFree(); - stats.mem.actualUsed = mem.getActualUsed(); - } catch (SigarException e) { - // ignore - } - - try { - Swap swap = sigar.getSwap(); - stats.swap = new OsStats.Swap(); - stats.swap.free = swap.getFree(); - stats.swap.used = swap.getUsed(); - } catch (SigarException e) { - // ignore - } - - return stats; - } -} diff --git a/core/src/main/java/org/elasticsearch/monitor/process/SigarProcessProbe.java b/core/src/main/java/org/elasticsearch/monitor/process/SigarProcessProbe.java deleted file mode 100644 index d24d6aa27bc..00000000000 --- a/core/src/main/java/org/elasticsearch/monitor/process/SigarProcessProbe.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Licensed to Elasticsearch under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.elasticsearch.monitor.process; - -import org.elasticsearch.common.component.AbstractComponent; -import org.elasticsearch.common.inject.Inject; -import org.elasticsearch.common.settings.Settings; -import org.elasticsearch.monitor.sigar.SigarService; -import org.hyperic.sigar.ProcCpu; -import org.hyperic.sigar.ProcMem; -import org.hyperic.sigar.Sigar; -import org.hyperic.sigar.SigarException; - -/** - * - */ -public class SigarProcessProbe extends AbstractComponent implements ProcessProbe { - - private final SigarService sigarService; - - @Inject - public SigarProcessProbe(Settings settings, SigarService sigarService) { - super(settings); - this.sigarService = sigarService; - } - - @Override - public synchronized ProcessInfo processInfo() { - return new ProcessInfo(sigarService.sigar().getPid(), JmxProcessProbe.getMaxFileDescriptorCount()); - } - - @Override - public synchronized ProcessStats processStats() { - Sigar sigar = sigarService.sigar(); - ProcessStats stats = new ProcessStats(); - stats.timestamp = System.currentTimeMillis(); - stats.openFileDescriptors = JmxProcessProbe.getOpenFileDescriptorCount(); - try { - if (stats.openFileDescriptors == -1) { - stats.openFileDescriptors = sigar.getProcFd(sigar.getPid()).getTotal(); - } - ProcCpu cpu = sigar.getProcCpu(sigar.getPid()); - stats.cpu = new ProcessStats.Cpu(); - stats.cpu.percent = (short) (cpu.getPercent() * 100); - stats.cpu.sys = cpu.getSys(); - stats.cpu.user = cpu.getUser(); - stats.cpu.total = cpu.getTotal(); - } catch (SigarException e) { - // ignore - } - - try { - ProcMem mem = sigar.getProcMem(sigar.getPid()); - stats.mem = new ProcessStats.Mem(); - stats.mem.totalVirtual = mem.getSize(); - stats.mem.resident = mem.getResident(); - stats.mem.share = mem.getShare(); - } catch (SigarException e) { - // ignore - } - - return stats; - } -} diff --git a/core/src/main/java/org/elasticsearch/monitor/sigar/SigarService.java b/core/src/main/java/org/elasticsearch/monitor/sigar/SigarService.java deleted file mode 100644 index f13dd35643c..00000000000 --- a/core/src/main/java/org/elasticsearch/monitor/sigar/SigarService.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Licensed to Elasticsearch under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.elasticsearch.monitor.sigar; - -import org.elasticsearch.common.component.AbstractComponent; -import org.elasticsearch.common.inject.Inject; -import org.elasticsearch.common.settings.Settings; -import org.hyperic.sigar.Sigar; - -/** - * - */ -public class SigarService extends AbstractComponent { - - private final Sigar sigar; - - @Inject - public SigarService(Settings settings) { - super(settings); - Sigar sigar = null; - if (settings.getAsBoolean("bootstrap.sigar", true)) { - try { - sigar = new Sigar(); - // call it to make sure the library was loaded - sigar.getPid(); - logger.trace("sigar loaded successfully"); - } catch (Throwable t) { - logger.trace("failed to load sigar", t); - if (sigar != null) { - try { - sigar.close(); - } catch (Throwable t1) { - // ignore - } finally { - sigar = null; - } - } - } - } - this.sigar = sigar; - } - - public boolean sigarAvailable() { - return sigar != null; - } - - public Sigar sigar() { - return this.sigar; - } -} diff --git a/core/src/test/java/org/elasticsearch/action/admin/cluster/stats/ClusterStatsTests.java b/core/src/test/java/org/elasticsearch/action/admin/cluster/stats/ClusterStatsTests.java index 9945eceaa5c..13c0ffa7cc1 100644 --- a/core/src/test/java/org/elasticsearch/action/admin/cluster/stats/ClusterStatsTests.java +++ b/core/src/test/java/org/elasticsearch/action/admin/cluster/stats/ClusterStatsTests.java @@ -26,7 +26,6 @@ import org.elasticsearch.client.Requests; import org.elasticsearch.common.Priority; import org.elasticsearch.common.settings.Settings; import org.elasticsearch.index.store.Store; -import org.elasticsearch.monitor.sigar.SigarService; import org.elasticsearch.test.ElasticsearchIntegrationTest; import org.elasticsearch.test.ElasticsearchIntegrationTest.ClusterScope; import org.hamcrest.Matchers; @@ -134,7 +133,6 @@ public class ClusterStatsTests extends ElasticsearchIntegrationTest { public void testValuesSmokeScreen() throws IOException { internalCluster().ensureAtMostNumDataNodes(5); internalCluster().ensureAtLeastNumDataNodes(1); - SigarService sigarService = internalCluster().getInstance(SigarService.class); assertAcked(prepareCreate("test1").setSettings(settingsBuilder().put(Store.INDEX_STORE_STATS_REFRESH_INTERVAL, 0).build())); index("test1", "type", "1", "f", "f"); /* @@ -150,12 +148,7 @@ public class ClusterStatsTests extends ElasticsearchIntegrationTest { assertThat(msg, response.nodesStats.getFs().getTotal().bytes(), Matchers.greaterThan(0l)); assertThat(msg, response.nodesStats.getJvm().getVersions().size(), Matchers.greaterThan(0)); - if (sigarService.sigarAvailable()) { - // We only get those if we have sigar - assertThat(msg, response.nodesStats.getOs().getAvailableProcessors(), Matchers.greaterThan(0)); - assertThat(msg, response.nodesStats.getOs().getAvailableMemory().bytes(), Matchers.greaterThan(0l)); - assertThat(msg, response.nodesStats.getOs().getCpus().size(), Matchers.greaterThan(0)); - } + assertThat(msg, response.nodesStats.getVersions().size(), Matchers.greaterThan(0)); assertThat(msg, response.nodesStats.getVersions().contains(Version.CURRENT), Matchers.equalTo(true)); assertThat(msg, response.nodesStats.getPlugins().size(), Matchers.greaterThanOrEqualTo(0)); diff --git a/core/src/test/java/org/elasticsearch/benchmark/mapping/ManyMappingsBenchmark.java b/core/src/test/java/org/elasticsearch/benchmark/mapping/ManyMappingsBenchmark.java index b40d29a948c..5a347ef1029 100644 --- a/core/src/test/java/org/elasticsearch/benchmark/mapping/ManyMappingsBenchmark.java +++ b/core/src/test/java/org/elasticsearch/benchmark/mapping/ManyMappingsBenchmark.java @@ -85,7 +85,7 @@ public class ManyMappingsBenchmark { public static void main(String[] args) throws Exception { System.setProperty("es.logger.prefix", ""); - Bootstrap.initializeNatives(true, false, false); + Bootstrap.initializeNatives(true, false); Settings settings = settingsBuilder() .put("") .put(SETTING_NUMBER_OF_SHARDS, 5) diff --git a/core/src/test/java/org/elasticsearch/benchmark/recovery/ReplicaRecoveryBenchmark.java b/core/src/test/java/org/elasticsearch/benchmark/recovery/ReplicaRecoveryBenchmark.java index 1ac7c433038..0d3375d1c6b 100644 --- a/core/src/test/java/org/elasticsearch/benchmark/recovery/ReplicaRecoveryBenchmark.java +++ b/core/src/test/java/org/elasticsearch/benchmark/recovery/ReplicaRecoveryBenchmark.java @@ -57,7 +57,7 @@ public class ReplicaRecoveryBenchmark { public static void main(String[] args) throws Exception { System.setProperty("es.logger.prefix", ""); - Bootstrap.initializeNatives(true, false, false); + Bootstrap.initializeNatives(true, false); Settings settings = settingsBuilder() .put("gateway.type", "local") diff --git a/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/GlobalOrdinalsBenchmark.java b/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/GlobalOrdinalsBenchmark.java index c415dbf9b2b..808d64d0323 100644 --- a/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/GlobalOrdinalsBenchmark.java +++ b/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/GlobalOrdinalsBenchmark.java @@ -66,7 +66,7 @@ public class GlobalOrdinalsBenchmark { public static void main(String[] args) throws Exception { System.setProperty("es.logger.prefix", ""); - Bootstrap.initializeNatives(true, false, false); + Bootstrap.initializeNatives(true, false); Random random = new Random(); Settings settings = settingsBuilder() diff --git a/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/SubAggregationSearchCollectModeBenchmark.java b/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/SubAggregationSearchCollectModeBenchmark.java index bf13b774edc..91fc72b8d57 100644 --- a/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/SubAggregationSearchCollectModeBenchmark.java +++ b/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/SubAggregationSearchCollectModeBenchmark.java @@ -71,7 +71,7 @@ public class SubAggregationSearchCollectModeBenchmark { static Node[] nodes; public static void main(String[] args) throws Exception { - Bootstrap.initializeNatives(true, false, false); + Bootstrap.initializeNatives(true, false); Random random = new Random(); Settings settings = settingsBuilder() diff --git a/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/TermsAggregationSearchAndIndexingBenchmark.java b/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/TermsAggregationSearchAndIndexingBenchmark.java index 45f7dbf9562..517f6bac531 100644 --- a/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/TermsAggregationSearchAndIndexingBenchmark.java +++ b/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/TermsAggregationSearchAndIndexingBenchmark.java @@ -71,7 +71,7 @@ public class TermsAggregationSearchAndIndexingBenchmark { static Node[] nodes; public static void main(String[] args) throws Exception { - Bootstrap.initializeNatives(true, false, false); + Bootstrap.initializeNatives(true, false); Settings settings = settingsBuilder() .put("refresh_interval", "-1") .put(SETTING_NUMBER_OF_SHARDS, 1) diff --git a/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/TermsAggregationSearchBenchmark.java b/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/TermsAggregationSearchBenchmark.java index 71ddbfcb908..e669b0d4f93 100644 --- a/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/TermsAggregationSearchBenchmark.java +++ b/core/src/test/java/org/elasticsearch/benchmark/search/aggregations/TermsAggregationSearchBenchmark.java @@ -99,7 +99,7 @@ public class TermsAggregationSearchBenchmark { } public static void main(String[] args) throws Exception { - Bootstrap.initializeNatives(true, false, false); + Bootstrap.initializeNatives(true, false); Random random = new Random(); Settings settings = settingsBuilder() diff --git a/core/src/test/java/org/elasticsearch/bootstrap/BootstrapForTesting.java b/core/src/test/java/org/elasticsearch/bootstrap/BootstrapForTesting.java index e73805ff995..083affa50b1 100644 --- a/core/src/test/java/org/elasticsearch/bootstrap/BootstrapForTesting.java +++ b/core/src/test/java/org/elasticsearch/bootstrap/BootstrapForTesting.java @@ -50,7 +50,7 @@ public class BootstrapForTesting { static { // just like bootstrap, initialize natives, then SM - Bootstrap.initializeNatives(true, true, true); + Bootstrap.initializeNatives(true, true); // check for jar hell try { @@ -85,8 +85,6 @@ public class BootstrapForTesting { // target/classes, target/test-classes Security.addPath(perms, basedir.resolve("target").resolve("classes"), "read,readlink"); Security.addPath(perms, basedir.resolve("target").resolve("test-classes"), "read,readlink"); - // lib/sigar - Security.addPath(perms, basedir.resolve("lib").resolve("sigar"), "read,readlink"); // .m2/repository Path m2repoDir = PathUtils.get(Objects.requireNonNull(System.getProperty("m2.repository"), "please set ${m2.repository} in pom.xml")); diff --git a/core/src/test/java/org/elasticsearch/monitor/SigarTests.java b/core/src/test/java/org/elasticsearch/monitor/SigarTests.java deleted file mode 100644 index f582c2fdc1c..00000000000 --- a/core/src/test/java/org/elasticsearch/monitor/SigarTests.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Licensed to Elasticsearch under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.elasticsearch.monitor; - -import org.elasticsearch.test.ElasticsearchTestCase; -import org.hyperic.sigar.Sigar; - -public class SigarTests extends ElasticsearchTestCase { - - @Override - public void setUp() throws Exception { - super.setUp(); - assumeTrue("we can only ensure sigar is working when running from maven", - Boolean.parseBoolean(System.getProperty("tests.maven"))); - } - - public void testSigarLoads() throws Exception { - Sigar.load(); - } - - public void testSigarWorks() throws Exception { - Sigar sigar = new Sigar(); - assertNotNull(sigar.getCpu()); - } -} diff --git a/core/src/test/java/org/elasticsearch/test/InternalTestCluster.java b/core/src/test/java/org/elasticsearch/test/InternalTestCluster.java index b8da49e8345..18e5c9ce083 100644 --- a/core/src/test/java/org/elasticsearch/test/InternalTestCluster.java +++ b/core/src/test/java/org/elasticsearch/test/InternalTestCluster.java @@ -279,7 +279,6 @@ public final class InternalTestCluster extends TestCluster { builder.put("path.data", dataPath.toString()); } } - builder.put("bootstrap.sigar", rarely(random)); builder.put("path.home", baseDir); builder.put("path.repo", baseDir.resolve("repos")); builder.put("transport.tcp.port", BASE_PORT + "-" + (BASE_PORT+100)); diff --git a/dev-tools/ElasticSearch.launch b/dev-tools/ElasticSearch.launch index 7574d20b39f..c501e4b8818 100644 --- a/dev-tools/ElasticSearch.launch +++ b/dev-tools/ElasticSearch.launch @@ -13,5 +13,5 @@ - + diff --git a/plugins/pom.xml b/plugins/pom.xml index df9aa1b7394..acc9af82ec2 100644 --- a/plugins/pom.xml +++ b/plugins/pom.xml @@ -207,11 +207,6 @@ jna provided - - org.fusesource - sigar - provided - org.apache.httpcomponents diff --git a/pom.xml b/pom.xml index b637996bb0e..43678cb4c42 100644 --- a/pom.xml +++ b/pom.xml @@ -430,24 +430,6 @@ true - - org.fusesource - sigar - 1.6.4 - - - - - org.jacoco @@ -624,7 +606,6 @@ -Xmx${tests.heap.size} -Xms${tests.heap.size} ${java.permGenSpace} - -Djava.library.path=${project.basedir}/lib/sigar -XX:MaxDirectMemorySize=512m -Des.logger.prefix= -XX:+HeapDumpOnOutOfMemoryError