From be906628d5a7b991c637c9ffc902de89542289db Mon Sep 17 00:00:00 2001 From: Jason Tedor Date: Wed, 28 Jun 2017 08:24:33 -0400 Subject: Remove implicit 32-bit support We previously tried to maintain (while not formally supporting) 32-bit support, although we never tested this anywhere in CI. Since we do not formally support this, and 32-bit usage is very low, we have elected to no longer maintain 32-bit support. This commit removes any implication of 32-bit support. Relates #25435 --- .../elasticsearch/bootstrap/SystemCallFilter.java | 1 - .../resources/bin/elasticsearch-service-x86.exe | Bin 80896 -> 0 bytes .../main/resources/bin/elasticsearch-service.bat | 20 ++------------------ distribution/src/main/resources/config/jvm.options | 4 ++-- .../migration/migrate_6_0/packaging.asciidoc | 6 ++++++ docs/reference/setup.asciidoc | 4 ---- docs/reference/setup/install/zip-windows.asciidoc | 7 +++---- 7 files changed, 13 insertions(+), 29 deletions(-) delete mode 100644 distribution/src/main/resources/bin/elasticsearch-service-x86.exe diff --git a/core/src/main/java/org/elasticsearch/bootstrap/SystemCallFilter.java b/core/src/main/java/org/elasticsearch/bootstrap/SystemCallFilter.java index d9ca969871..c9971a8a72 100644 --- a/core/src/main/java/org/elasticsearch/bootstrap/SystemCallFilter.java +++ b/core/src/main/java/org/elasticsearch/bootstrap/SystemCallFilter.java @@ -242,7 +242,6 @@ final class SystemCallFilter { static { Map m = new HashMap<>(); m.put("amd64", new Arch(0xC000003E, 0x3FFFFFFF, 57, 58, 59, 322, 317)); - m.put("i386", new Arch(0x40000003, 0xFFFFFFFF, 2, 190, 11, 358, 354)); ARCHITECTURES = Collections.unmodifiableMap(m); } diff --git a/distribution/src/main/resources/bin/elasticsearch-service-x86.exe b/distribution/src/main/resources/bin/elasticsearch-service-x86.exe deleted file mode 100644 index 4240720018..0000000000 Binary files a/distribution/src/main/resources/bin/elasticsearch-service-x86.exe and /dev/null differ diff --git a/distribution/src/main/resources/bin/elasticsearch-service.bat b/distribution/src/main/resources/bin/elasticsearch-service.bat index 0215709b8f..e8fb6cd235 100644 --- a/distribution/src/main/resources/bin/elasticsearch-service.bat +++ b/distribution/src/main/resources/bin/elasticsearch-service.bat @@ -27,29 +27,13 @@ if not "%CONF_FILE%" == "" goto conffileset set SCRIPT_DIR=%~dp0 for %%I in ("%SCRIPT_DIR%..") do set ES_HOME=%%~dpfI -%JAVA% -Xmx50M -version > nul 2>&1 - -if errorlevel 1 ( - echo Warning: Could not start JVM to detect version, defaulting to x86: - goto x86 -) - -%JAVA% -Xmx50M -version 2>&1 | "%windir%\System32\find" "64-Bit" >nul: - -if errorlevel 1 goto x86 set EXECUTABLE=%ES_HOME%\bin\elasticsearch-service-x64.exe set SERVICE_ID=elasticsearch-service-x64 set ARCH=64-bit -goto checkExe - -:x86 -set EXECUTABLE=%ES_HOME%\bin\elasticsearch-service-x86.exe -set SERVICE_ID=elasticsearch-service-x86 -set ARCH=32-bit -:checkExe if EXIST "%EXECUTABLE%" goto okExe -echo elasticsearch-service-(x86|x64).exe was not found... +echo elasticsearch-service-x64.exe was not found... +exit /B 1 :okExe set ES_VERSION=${project.version} diff --git a/distribution/src/main/resources/config/jvm.options b/distribution/src/main/resources/config/jvm.options index 6d265fe776..e0e362beea 100644 --- a/distribution/src/main/resources/config/jvm.options +++ b/distribution/src/main/resources/config/jvm.options @@ -47,10 +47,10 @@ ## basic -# force the server VM (remove on 32-bit client JVMs) +# force the server VM -server -# explicitly set the stack size (reduce to 320k on 32-bit client JVMs) +# explicitly set the stack size -Xss1m # set to headless, just in case diff --git a/docs/reference/migration/migrate_6_0/packaging.asciidoc b/docs/reference/migration/migrate_6_0/packaging.asciidoc index 33c92b486c..6ddd84d3e2 100644 --- a/docs/reference/migration/migrate_6_0/packaging.asciidoc +++ b/docs/reference/migration/migrate_6_0/packaging.asciidoc @@ -29,3 +29,9 @@ removed and now data paths and log paths can be configured via settings only. Related, this means that the environment variables `DATA_DIR` and `LOG_DIR` no longer have any effect as these were used to set `default.path.data` and `default.path.logs` in the packaging scripts. + +==== 32-bit is no longer maintained + +We previously attempted to ensure that Elasticsearch could be started on 32-bit +JVM (although a bootstrap check prevented using a 32-bit JVM in production). We +are no longer maintaining this attempt. diff --git a/docs/reference/setup.asciidoc b/docs/reference/setup.asciidoc index 164307c640..7cc9d5ef80 100644 --- a/docs/reference/setup.asciidoc +++ b/docs/reference/setup.asciidoc @@ -34,10 +34,6 @@ refuse to start if a known-bad version of Java is used. The version of Java that Elasticsearch will use can be configured by setting the `JAVA_HOME` environment variable. -NOTE: Elasticsearch ships with default configuration for running Elasticsearch on 64-bit server JVMs. If you are using a 32-bit client JVM, -you must remove `-server` from <> and if you are using any 32-bit JVM you should reconfigure the thread stack size -from `-Xss1m` to `-Xss320k`. - -- include::setup/install.asciidoc[] diff --git a/docs/reference/setup/install/zip-windows.asciidoc b/docs/reference/setup/install/zip-windows.asciidoc index 2bddd6b3a9..e19fe27d5f 100644 --- a/docs/reference/setup/install/zip-windows.asciidoc +++ b/docs/reference/setup/install/zip-windows.asciidoc @@ -111,9 +111,7 @@ The commands available are: `manager`:: Start a GUI for managing the installed service -Based on the architecture of the available JDK/JRE (set through `JAVA_HOME`), -the appropriate 64-bit(x64) or 32-bit(x86) service will be installed. This -information is made available during install: +The name of the service and the value of `JAVA_HOME` will be made available during install: ["source","sh",subs="attributes"] -------------------------------------------------- @@ -141,7 +139,8 @@ The Elasticsearch service can be configured prior to installation by setting the [horizontal] `SERVICE_ID`:: - A unique identifier for the service. Useful if installing multiple instances on the same machine. Defaults to `elasticsearch-service-x86` (on 32-bit Windows) or `elasticsearch-service-x64` (on 64-bit Windows). + A unique identifier for the service. Useful if installing multiple instances + on the same machine. Defaults to `elasticsearch-service-x64`. `SERVICE_USERNAME`:: -- cgit v1.2.3