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

startup scripts should pass jvm -Djava.io.tmpdir=$ES_HOME/tmp #14372

Closed
rmuir opened this issue Oct 30, 2015 · 5 comments
Closed

startup scripts should pass jvm -Djava.io.tmpdir=$ES_HOME/tmp #14372

rmuir opened this issue Oct 30, 2015 · 5 comments
Labels
:Delivery/Packaging RPM and deb packaging, tar and zip archives, shell and batch scripts >enhancement good first issue low hanging fruit help wanted adoptme Team:Delivery Meta label for Delivery team

Comments

@rmuir
Copy link
Contributor

rmuir commented Oct 30, 2015

Today we use the system tempdir, but this can cause several problems (e.g. https://discuss.elastic.co/t/elasticsearch-2-0-warning-jna-is-not-available/33320/1). It would also just be better in general as far as isolating the elasticsearch process.

Instead we should just set our own: scripts should also create it, if it does not exist. It should not and cannot be configurable: it needs to be passed to the jvm initially and not set after-the-fact. Otherwise we end out with a mess (e.g. 2 temp directories to contend with).

@rmuir rmuir added the help wanted adoptme label Oct 30, 2015
@clintongormley clintongormley added >enhancement good first issue low hanging fruit :Delivery/Packaging RPM and deb packaging, tar and zip archives, shell and batch scripts labels Oct 30, 2015
@nik9000
Copy link
Member

nik9000 commented Nov 23, 2015

Instead we should just set our own: scripts should also create it, if it does not exist. It should not and cannot be configurable: it needs to be passed to the jvm initially and not set after-the-fact. Otherwise we end out with a mess (e.g. 2 temp directories to contend with).

I suspect there are plenty of distros that'd be upset if we didn't let them override that to dump it where they want it. If its just something that defaults to $ESHOME/tmp but can be changed with a shell variable that'd be fine.

@rmuir
Copy link
Contributor Author

rmuir commented Nov 23, 2015

Yeah: shell variable is fine. Its more that it wont really work as a e.g. typical elasticsearch.yml configuration option.

We need to pass java.io.tmpdir into the JVM up front, in JAVA_OPTS, otherwise it only works "partially" and we will be stuck with two temporary directories, which is bad.

@nellicus
Copy link
Contributor

nellicus commented Mar 9, 2016

another user hit this today @rmuir @nik9000

@rmuir
Copy link
Contributor Author

rmuir commented Mar 9, 2016

Thats's ok: Like i said its essentially unfixable until we decide to cleanup how elasticsearch configuration works.

@jasontedor
Copy link
Member

We are not going to set the temporary directory to ES_HOME/tmp with our default packaging as that is not sufficiently private. With #27609 a user can set ES_TMPDIR to override java.io.tmpdir and we default this to a private temporary directory.

@mark-vieira mark-vieira added the Team:Delivery Meta label for Delivery team label Nov 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Delivery/Packaging RPM and deb packaging, tar and zip archives, shell and batch scripts >enhancement good first issue low hanging fruit help wanted adoptme Team:Delivery Meta label for Delivery team
Projects
None yet
Development

No branches or pull requests

6 participants