The forum will experience an outage sometime between February 10 at 7:00pm EST and February 12 at 11:59 EST for installation of security updates. The actual time and duration of the outage are unknown but attempts will be made to minimize the downtime. We apologize for any inconvenience.

Currently the location of diagnostic data dumps etc is determined by an environment variable SADIAGDIR. This applies to all engines running on the server - unlike TEMPDIR etc there is no option to set it in the db engine startup parameters.

This is a pain for two reasons if you run multiple servers:

  • all server have to be stopped before any change takes effect
  • all diagnostic information ends up in the same place

This is particularly problematic when one is trying to save full cache dumps and lots of RAM (eg 100GB + ) is in use!

Ideally, one could set a SADIAGDIR setting per d engine in the start-up parameters which would override anything else just like the temporary folder settings do).

asked 15 Jul '13, 11:17

Justin%20Willey's gravatar image

Justin Willey
6.4k101132197
accept rate: 20%


Perhaps I am not understanding the problem - Why can't you set the environment variable SADIAGDIR to different values before you start each server? i.e. just before spawning the server set the variable.

E.g. (syntax will vary depending on shell being used)

set SADIAGDIR=/path/to/location/1
dbspawn dbsrv16 -n server1 foo.db

set SADIAGDIR=/a/different/path/2
dbspawn dbsrv16 -n server 2 bar.db

Server1 will dump data into /path/to/location/1 and server2 will dump data into /a/different/path/2

permanent link

answered 15 Jul '13, 12:06

Mark%20Culp's gravatar image

Mark Culp
22.3k9129262
accept rate: 40%

Do you mean that each instance uses the value of SADIAGDIR that was current when it was started, ignoring any later changes?

(15 Jul '13, 12:23) Justin Willey
Replies hidden

Yes. By design, a process uses its own "share of environment variables", i.e. when the process is started, he inherits those from the parent process (say, a shell), and further modifications of the parent's process environment do not influence the new process (and vice versa).

(15 Jul '13, 12:28) Volker Barth
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×404
×186
×137
×106

question asked: 15 Jul '13, 11:17

question was seen: 717 times

last updated: 15 Jul '13, 12:45