ctubbsii commented on issue #286:
URL: https://github.com/apache/fluo-uno/issues/286#issuecomment-1262623491

   Okay, I see. I was able to reproduce this with only one server, and I saw 
the same thing for all services, not just tserver. If I used `uno accumulo 
start` instead of `$ACCUMULO_HOME/bin/accumulo-cluster start`, then the logging 
was updated fine. So, it seems to be specifically related to the manual use of 
`accumulo-cluster`.
   
   One difference, when I look at `/proc/<PID>/environ`, is that using 
`accumulo-cluster` directly does not set `ACCUMULO_LOG_DIR`. Looking at 
`install/accumulo-2.1.0-SNAPSHOT/conf/accumulo-env.sh`, I can see that 
`ACCUMULO_LOG_DIR` is defaulting to `install/accumulo-2.1.0-SNAPSHOT/logs`. 
And, sure enough, when I look there, the logs for the restarted processes can 
be found there.
   
   So, this looks like a situation where the behavior of Uno is to try to put 
the logs in an special place specifically for Uno, but manually running 
`accumulo-cluster` or other non-Uno scripts to modify Accumulo will cause it to 
run with its own environment.
   
   There are a few solutions to this that I can think of:
   
   1. Instead of Uno configuring the `ACCUMULO_LOG_DIR` with an environment 
variable for itself, it can modify the `accumulo-env.sh` script so that it 
stores the Uno preferred location for logs, for any subsequent operations that 
aren't aware of Uno.
   2. Instead of Uno trying to customize the location of the log directory at 
all, it could just let Accumulo use its default location, and create a link to 
it at `install/logs/accumulo` that points to the Accumulo's standard location.
   3. We could modify `uno env` to ensure `ACCUMULO_LOG_DIR` is exported, and 
if you want Accumulo scripts to be aware of Uno's preferences, you'll just have 
to run `source <(uno env)` before you run the script, like `accumulo-cluster` 
that bypasses Uno.
   
   The last option is easiest and least disruptive, but user's will still see 
this issue if they forget to source the environment. The first option is the 
most foolproof, but requires us to be more careful that our modifications to 
the Accumulo environment file work across Accumulo versions. The second option 
is a decent middle-ground, but may require us to pay a bit of attention to how 
we reset/wipe the cluster to ensure we're clearing out old files differently 
than how we're currently doing it.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to