Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-21 Thread Stephan Erb

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/#review185927
---


Ship it!




Thanks for the patch! It looks good to me.

I cannot commit this atm though. Bill, could you handle that?

- Stephan Erb


On Sept. 20, 2017, 9:09 p.m., Keisuke Nishimoto wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62423/
> ---
> 
> (Updated Sept. 20, 2017, 9:09 p.m.)
> 
> 
> Review request for Aurora.
> 
> 
> Bugs: AURORA-1947
> https://issues.apache.org/jira/browse/AURORA-1947
> 
> 
> Repository: aurora
> 
> 
> Description
> ---
> 
> MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
> -zk_endpoints even when -zk_in_proc=true.  I updated the module to use 
> injected server endpoints which will be based on the ephemeral port assigned 
> to ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
> @ServiceDiscoveryBindings.ZooKeeper public.
> 
> I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService 
> so that it won't close existing ZooKeeper connections before clients close 
> the session.  While just delaying the execution by 1 second doesn't really 
> guarantee that behavior, in practice this achieved clean shutdown of the 
> scheduler with in-process ZooKeeper server.
> 
> 
> Diffs
> -
> 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
>  28cdc4b3b454b3d25008a21c6b12634173e1f878 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java
>  c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
>   src/main/java/org/apache/aurora/scheduler/discovery/ZooKeeperConfig.java 
> 3f32a6272bb05fc5d7ffd576f6645be00114a42c 
>   
> src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
> 6704a328a4023a178ed8f86ae4772cb04eb2fa8e 
> 
> 
> Diff: https://reviews.apache.org/r/62423/diff/2/
> 
> 
> Testing
> ---
> 
> 1. Launch Mesos master and slave on my laptop.
> 2. Launch Aurora scheduler with following arguments:
> ```
> -backup_dir=/var/lib/aurora/backups
> -cluster_name=local
> -mesos_master_address=localhost:5050
> -serverset_path=/aurora/scheduler
> -ip=127.0.0.1
> -hostname=localhost
> -http_port=8081
> -zk_in_proc=true
> -zk_endpoints=localhost:2181
> -native_log_zk_group_path=/aurora/replicated-log
> -native_log_file_path=/var/db/aurora
> ```
> 3. Observe that there are no ZooKeeper error log outputs caused by missing 
> endpoint.
> 4. Create a simple job, observer it launches normally and then kill it.
> 5. Stop the scheduler by sending /quitquitquit.
> 6. Observe that scheduler process shuts down normally.
> 
> 
> Thanks,
> 
> Keisuke Nishimoto
> 
>



Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-20 Thread Aurora ReviewBot

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/#review185836
---



Master (96a5287) is green with this patch.
  ./build-support/jenkins/build.sh

However, it appears that it might lack test coverage.

I will refresh this build result if you post a review containing "@ReviewBot 
retry"

- Aurora ReviewBot


On Sept. 20, 2017, 7:09 p.m., Keisuke Nishimoto wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62423/
> ---
> 
> (Updated Sept. 20, 2017, 7:09 p.m.)
> 
> 
> Review request for Aurora.
> 
> 
> Bugs: AURORA-1947
> https://issues.apache.org/jira/browse/AURORA-1947
> 
> 
> Repository: aurora
> 
> 
> Description
> ---
> 
> MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
> -zk_endpoints even when -zk_in_proc=true.  I updated the module to use 
> injected server endpoints which will be based on the ephemeral port assigned 
> to ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
> @ServiceDiscoveryBindings.ZooKeeper public.
> 
> I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService 
> so that it won't close existing ZooKeeper connections before clients close 
> the session.  While just delaying the execution by 1 second doesn't really 
> guarantee that behavior, in practice this achieved clean shutdown of the 
> scheduler with in-process ZooKeeper server.
> 
> 
> Diffs
> -
> 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
>  28cdc4b3b454b3d25008a21c6b12634173e1f878 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java
>  c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
>   src/main/java/org/apache/aurora/scheduler/discovery/ZooKeeperConfig.java 
> 3f32a6272bb05fc5d7ffd576f6645be00114a42c 
>   
> src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
> 6704a328a4023a178ed8f86ae4772cb04eb2fa8e 
> 
> 
> Diff: https://reviews.apache.org/r/62423/diff/2/
> 
> 
> Testing
> ---
> 
> 1. Launch Mesos master and slave on my laptop.
> 2. Launch Aurora scheduler with following arguments:
> ```
> -backup_dir=/var/lib/aurora/backups
> -cluster_name=local
> -mesos_master_address=localhost:5050
> -serverset_path=/aurora/scheduler
> -ip=127.0.0.1
> -hostname=localhost
> -http_port=8081
> -zk_in_proc=true
> -zk_endpoints=localhost:2181
> -native_log_zk_group_path=/aurora/replicated-log
> -native_log_file_path=/var/db/aurora
> ```
> 3. Observe that there are no ZooKeeper error log outputs caused by missing 
> endpoint.
> 4. Create a simple job, observer it launches normally and then kill it.
> 5. Stop the scheduler by sending /quitquitquit.
> 6. Observe that scheduler process shuts down normally.
> 
> 
> Thanks,
> 
> Keisuke Nishimoto
> 
>



Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-20 Thread Keisuke Nishimoto

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/#review185834
---



@ReviewBot retry

- Keisuke Nishimoto


On Sept. 20, 2017, 7:09 p.m., Keisuke Nishimoto wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62423/
> ---
> 
> (Updated Sept. 20, 2017, 7:09 p.m.)
> 
> 
> Review request for Aurora.
> 
> 
> Bugs: AURORA-1947
> https://issues.apache.org/jira/browse/AURORA-1947
> 
> 
> Repository: aurora
> 
> 
> Description
> ---
> 
> MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
> -zk_endpoints even when -zk_in_proc=true.  I updated the module to use 
> injected server endpoints which will be based on the ephemeral port assigned 
> to ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
> @ServiceDiscoveryBindings.ZooKeeper public.
> 
> I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService 
> so that it won't close existing ZooKeeper connections before clients close 
> the session.  While just delaying the execution by 1 second doesn't really 
> guarantee that behavior, in practice this achieved clean shutdown of the 
> scheduler with in-process ZooKeeper server.
> 
> 
> Diffs
> -
> 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
>  28cdc4b3b454b3d25008a21c6b12634173e1f878 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java
>  c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
>   src/main/java/org/apache/aurora/scheduler/discovery/ZooKeeperConfig.java 
> 3f32a6272bb05fc5d7ffd576f6645be00114a42c 
>   
> src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
> 6704a328a4023a178ed8f86ae4772cb04eb2fa8e 
> 
> 
> Diff: https://reviews.apache.org/r/62423/diff/2/
> 
> 
> Testing
> ---
> 
> 1. Launch Mesos master and slave on my laptop.
> 2. Launch Aurora scheduler with following arguments:
> ```
> -backup_dir=/var/lib/aurora/backups
> -cluster_name=local
> -mesos_master_address=localhost:5050
> -serverset_path=/aurora/scheduler
> -ip=127.0.0.1
> -hostname=localhost
> -http_port=8081
> -zk_in_proc=true
> -zk_endpoints=localhost:2181
> -native_log_zk_group_path=/aurora/replicated-log
> -native_log_file_path=/var/db/aurora
> ```
> 3. Observe that there are no ZooKeeper error log outputs caused by missing 
> endpoint.
> 4. Create a simple job, observer it launches normally and then kill it.
> 5. Stop the scheduler by sending /quitquitquit.
> 6. Observe that scheduler process shuts down normally.
> 
> 
> Thanks,
> 
> Keisuke Nishimoto
> 
>



Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-20 Thread Bill Farner

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/#review185822
---


Ship it!




Ship It!

- Bill Farner


On Sept. 20, 2017, 12:09 p.m., Keisuke Nishimoto wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62423/
> ---
> 
> (Updated Sept. 20, 2017, 12:09 p.m.)
> 
> 
> Review request for Aurora.
> 
> 
> Bugs: AURORA-1947
> https://issues.apache.org/jira/browse/AURORA-1947
> 
> 
> Repository: aurora
> 
> 
> Description
> ---
> 
> MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
> -zk_endpoints even when -zk_in_proc=true.  I updated the module to use 
> injected server endpoints which will be based on the ephemeral port assigned 
> to ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
> @ServiceDiscoveryBindings.ZooKeeper public.
> 
> I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService 
> so that it won't close existing ZooKeeper connections before clients close 
> the session.  While just delaying the execution by 1 second doesn't really 
> guarantee that behavior, in practice this achieved clean shutdown of the 
> scheduler with in-process ZooKeeper server.
> 
> 
> Diffs
> -
> 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
>  28cdc4b3b454b3d25008a21c6b12634173e1f878 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java
>  c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
>   src/main/java/org/apache/aurora/scheduler/discovery/ZooKeeperConfig.java 
> 3f32a6272bb05fc5d7ffd576f6645be00114a42c 
>   
> src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
> 6704a328a4023a178ed8f86ae4772cb04eb2fa8e 
> 
> 
> Diff: https://reviews.apache.org/r/62423/diff/2/
> 
> 
> Testing
> ---
> 
> 1. Launch Mesos master and slave on my laptop.
> 2. Launch Aurora scheduler with following arguments:
> ```
> -backup_dir=/var/lib/aurora/backups
> -cluster_name=local
> -mesos_master_address=localhost:5050
> -serverset_path=/aurora/scheduler
> -ip=127.0.0.1
> -hostname=localhost
> -http_port=8081
> -zk_in_proc=true
> -zk_endpoints=localhost:2181
> -native_log_zk_group_path=/aurora/replicated-log
> -native_log_file_path=/var/db/aurora
> ```
> 3. Observe that there are no ZooKeeper error log outputs caused by missing 
> endpoint.
> 4. Create a simple job, observer it launches normally and then kill it.
> 5. Stop the scheduler by sending /quitquitquit.
> 6. Observe that scheduler process shuts down normally.
> 
> 
> Thanks,
> 
> Keisuke Nishimoto
> 
>



Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-20 Thread Aurora ReviewBot

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/#review185817
---



Master (96a5287) is red with this patch.
  ./build-support/jenkins/build.sh

  Test coverage missing for org/apache/aurora/scheduler/storage/db/PruneVictim
  Test coverage missing for 
org/apache/aurora/scheduler/state/TaskAssigner$FirstFitTaskAssigner
  Test coverage missing for 
org/apache/aurora/scheduler/discovery/CommonsServiceGroupMonitor
  Test coverage missing for 
org/apache/aurora/scheduler/http/api/GsonMessageBodyHandler
  Test coverage missing for org/apache/aurora/scheduler/http/api/ApiBeta
  Test coverage missing for 
org/apache/aurora/scheduler/reconciliation/KillRetry$KillAttempt
  Test coverage missing for 
org/apache/aurora/scheduler/cron/quartz/CronPredictorImpl
  Test coverage missing for 
org/apache/aurora/scheduler/scheduling/RescheduleCalculator$RescheduleCalculatorImpl$1
  Test coverage missing for org/apache/aurora/scheduler/quota/QuotaInfo
  Test coverage missing for 
org/apache/aurora/scheduler/quota/QuotaManager$QuotaManagerImpl
  Test coverage missing for 
org/apache/aurora/scheduler/offers/RandomJitterReturnDelay
  Test coverage missing for 
org/apache/aurora/scheduler/mesos/FrameworkInfoFactory$FrameworkInfoFactoryImpl
  Test coverage missing for 
org/apache/aurora/scheduler/thrift/aop/LoggingInterceptor
  Test coverage missing for 
org/apache/aurora/scheduler/thrift/aop/ThriftStatsExporterInterceptor$1
  Test coverage missing for 
org/apache/aurora/scheduler/thrift/aop/ThriftStatsExporterInterceptor$2
  Test coverage missing for 
org/apache/aurora/scheduler/thrift/aop/LoggingInterceptor$1
  Test coverage missing for 
org/apache/aurora/scheduler/thrift/aop/ThriftStatsExporterInterceptor
  Test coverage missing for 
org/apache/aurora/scheduler/thrift/aop/ThriftWorkload$ThriftWorkloadCounterImpl
  Test coverage missing for 
org/apache/aurora/scheduler/thrift/ReadOnlySchedulerImpl
  Test coverage missing for 
org/apache/aurora/scheduler/preemptor/PreemptionVictimFilter$PreemptionVictimFilterImpl
  Test coverage missing for org/apache/aurora/scheduler/preemptor/BiCache$1
  Test coverage missing for 
org/apache/aurora/scheduler/preemptor/PreemptionVictimFilter$PreemptionVictimFilterImpl$2
  Test coverage missing for 
org/apache/aurora/scheduler/preemptor/PreemptionVictimFilter$PreemptionVictimFilterImpl$1
  Test coverage missing for 
org/apache/aurora/scheduler/events/NotifyingSchedulingFilter
  Test coverage missing for 
org/apache/aurora/scheduler/events/PubsubEvent$HostAttributesChanged
  Test coverage missing for 
org/apache/aurora/scheduler/storage/backup/TemporaryStorage$TemporaryStorageFactory$1
  Test coverage missing for 
org/apache/aurora/scheduler/storage/backup/StorageBackup$StorageBackupImpl$BackupConfig
  Test coverage missing for 
org/apache/aurora/scheduler/storage/backup/Recovery$RecoveryImpl
  Test coverage missing for 
org/apache/aurora/scheduler/storage/backup/TemporaryStorage$TemporaryStorageFactory
  Test coverage missing for 
org/apache/aurora/scheduler/storage/backup/Recovery$RecoveryImpl$PendingRecovery
  Test coverage missing for org/apache/aurora/scheduler/HostOffer$1
  Test coverage missing for org/apache/aurora/scheduler/TaskStatusHandlerImpl$1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug 
option to get more log output.
==

BUILD FAILED

Total time: 11 mins 37.608 secs


I will refresh this build result if you post a review containing "@ReviewBot 
retry"

- Aurora ReviewBot


On Sept. 20, 2017, 7:09 p.m., Keisuke Nishimoto wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62423/
> ---
> 
> (Updated Sept. 20, 2017, 7:09 p.m.)
> 
> 
> Review request for Aurora.
> 
> 
> Bugs: AURORA-1947
> https://issues.apache.org/jira/browse/AURORA-1947
> 
> 
> Repository: aurora
> 
> 
> Description
> ---
> 
> MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
> -zk_endpoints even when -zk_in_proc=true.  I updated the module to use 
> injected server endpoints which will be based on the ephemeral port assigned 
> to ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
> @ServiceDiscoveryBindings.ZooKeeper public.
> 
> I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService 
> so that it won't close existing ZooKeeper connections before clients close 
> the session.  While just delaying the execution by 1 second doesn't really 
> guarantee that behavior, in practice this achieved clean shutdown of the 
> scheduler with in-process ZooKeeper server.
> 
> 
> Diffs
> -
> 
>   
> src/main/java/org/

Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-20 Thread Keisuke Nishimoto

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/
---

(Updated Sept. 20, 2017, 7:09 p.m.)


Review request for Aurora.


Bugs: AURORA-1947
https://issues.apache.org/jira/browse/AURORA-1947


Repository: aurora


Description
---

MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
-zk_endpoints even when -zk_in_proc=true.  I updated the module to use injected 
server endpoints which will be based on the ephemeral port assigned to 
ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
@ServiceDiscoveryBindings.ZooKeeper public.

I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService so 
that it won't close existing ZooKeeper connections before clients close the 
session.  While just delaying the execution by 1 second doesn't really 
guarantee that behavior, in practice this achieved clean shutdown of the 
scheduler with in-process ZooKeeper server.


Diffs (updated)
-

  
src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
 28cdc4b3b454b3d25008a21c6b12634173e1f878 
  
src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java 
c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
  src/main/java/org/apache/aurora/scheduler/discovery/ZooKeeperConfig.java 
3f32a6272bb05fc5d7ffd576f6645be00114a42c 
  src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
6704a328a4023a178ed8f86ae4772cb04eb2fa8e 


Diff: https://reviews.apache.org/r/62423/diff/2/

Changes: https://reviews.apache.org/r/62423/diff/1-2/


Testing
---

1. Launch Mesos master and slave on my laptop.
2. Launch Aurora scheduler with following arguments:
```
-backup_dir=/var/lib/aurora/backups
-cluster_name=local
-mesos_master_address=localhost:5050
-serverset_path=/aurora/scheduler
-ip=127.0.0.1
-hostname=localhost
-http_port=8081
-zk_in_proc=true
-zk_endpoints=localhost:2181
-native_log_zk_group_path=/aurora/replicated-log
-native_log_file_path=/var/db/aurora
```
3. Observe that there are no ZooKeeper error log outputs caused by missing 
endpoint.
4. Create a simple job, observer it launches normally and then kill it.
5. Stop the scheduler by sending /quitquitquit.
6. Observe that scheduler process shuts down normally.


Thanks,

Keisuke Nishimoto



Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-20 Thread Keisuke Nishimoto


> On Sept. 20, 2017, 4:55 p.m., Bill Farner wrote:
> > src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java
> > Line 148 (original), 150 (patched)
> > 
> >
> > This seems to suggest that `zkClientConfig.getServers()` may return the 
> > wrong addresses.  Why is that?

This is because zkClientConfig.getServers() here returns values as specified by 
-zk_endpoints, which is supposed to be ignored when -zk_in_proc=true.  Since 
ZooKeeperConfig is not injected and we don't know the port of 
ZooKeeperTestServer when FlaggedZooKeeperConfig.create() is called, it is not 
trivial to let ZooKeeperConfig#getServer() return a correct value when 
in-process ZooKeeper server is used.  I may make ZooKeeperConfig#getServers() 
non-public instead.


- Keisuke


---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/#review185801
---


On Sept. 19, 2017, 10:49 p.m., Keisuke Nishimoto wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62423/
> ---
> 
> (Updated Sept. 19, 2017, 10:49 p.m.)
> 
> 
> Review request for Aurora.
> 
> 
> Bugs: AURORA-1947
> https://issues.apache.org/jira/browse/AURORA-1947
> 
> 
> Repository: aurora
> 
> 
> Description
> ---
> 
> MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
> -zk_endpoints even when -zk_in_proc=true.  I updated the module to use 
> injected server endpoints which will be based on the ephemeral port assigned 
> to ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
> @ServiceDiscoveryBindings.ZooKeeper public.
> 
> I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService 
> so that it won't close existing ZooKeeper connections before clients close 
> the session.  While just delaying the execution by 1 second doesn't really 
> guarantee that behavior, in practice this achieved clean shutdown of the 
> scheduler with in-process ZooKeeper server.
> 
> 
> Diffs
> -
> 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
>  28cdc4b3b454b3d25008a21c6b12634173e1f878 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java
>  c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
>   
> src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
> 6704a328a4023a178ed8f86ae4772cb04eb2fa8e 
> 
> 
> Diff: https://reviews.apache.org/r/62423/diff/1/
> 
> 
> Testing
> ---
> 
> 1. Launch Mesos master and slave on my laptop.
> 2. Launch Aurora scheduler with following arguments:
> ```
> -backup_dir=/var/lib/aurora/backups
> -cluster_name=local
> -mesos_master_address=localhost:5050
> -serverset_path=/aurora/scheduler
> -ip=127.0.0.1
> -hostname=localhost
> -http_port=8081
> -zk_in_proc=true
> -zk_endpoints=localhost:2181
> -native_log_zk_group_path=/aurora/replicated-log
> -native_log_file_path=/var/db/aurora
> ```
> 3. Observe that there are no ZooKeeper error log outputs caused by missing 
> endpoint.
> 4. Create a simple job, observer it launches normally and then kill it.
> 5. Stop the scheduler by sending /quitquitquit.
> 6. Observe that scheduler process shuts down normally.
> 
> 
> Thanks,
> 
> Keisuke Nishimoto
> 
>



Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-20 Thread Bill Farner

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/#review185801
---




src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java
Line 148 (original), 150 (patched)


This seems to suggest that `zkClientConfig.getServers()` may return the 
wrong addresses.  Why is that?


- Bill Farner


On Sept. 19, 2017, 3:49 p.m., Keisuke Nishimoto wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62423/
> ---
> 
> (Updated Sept. 19, 2017, 3:49 p.m.)
> 
> 
> Review request for Aurora.
> 
> 
> Bugs: AURORA-1947
> https://issues.apache.org/jira/browse/AURORA-1947
> 
> 
> Repository: aurora
> 
> 
> Description
> ---
> 
> MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
> -zk_endpoints even when -zk_in_proc=true.  I updated the module to use 
> injected server endpoints which will be based on the ephemeral port assigned 
> to ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
> @ServiceDiscoveryBindings.ZooKeeper public.
> 
> I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService 
> so that it won't close existing ZooKeeper connections before clients close 
> the session.  While just delaying the execution by 1 second doesn't really 
> guarantee that behavior, in practice this achieved clean shutdown of the 
> scheduler with in-process ZooKeeper server.
> 
> 
> Diffs
> -
> 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
>  28cdc4b3b454b3d25008a21c6b12634173e1f878 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java
>  c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
>   
> src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
> 6704a328a4023a178ed8f86ae4772cb04eb2fa8e 
> 
> 
> Diff: https://reviews.apache.org/r/62423/diff/1/
> 
> 
> Testing
> ---
> 
> 1. Launch Mesos master and slave on my laptop.
> 2. Launch Aurora scheduler with following arguments:
> ```
> -backup_dir=/var/lib/aurora/backups
> -cluster_name=local
> -mesos_master_address=localhost:5050
> -serverset_path=/aurora/scheduler
> -ip=127.0.0.1
> -hostname=localhost
> -http_port=8081
> -zk_in_proc=true
> -zk_endpoints=localhost:2181
> -native_log_zk_group_path=/aurora/replicated-log
> -native_log_file_path=/var/db/aurora
> ```
> 3. Observe that there are no ZooKeeper error log outputs caused by missing 
> endpoint.
> 4. Create a simple job, observer it launches normally and then kill it.
> 5. Stop the scheduler by sending /quitquitquit.
> 6. Observe that scheduler process shuts down normally.
> 
> 
> Thanks,
> 
> Keisuke Nishimoto
> 
>



Re: Review Request 62423: Improve in-process test ZooKeeper support

2017-09-19 Thread Aurora ReviewBot

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/#review185745
---



Master (96a5287) is green with this patch.
  ./build-support/jenkins/build.sh

However, it appears that it might lack test coverage.

I will refresh this build result if you post a review containing "@ReviewBot 
retry"

- Aurora ReviewBot


On Sept. 19, 2017, 10:49 p.m., Keisuke Nishimoto wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/62423/
> ---
> 
> (Updated Sept. 19, 2017, 10:49 p.m.)
> 
> 
> Review request for Aurora.
> 
> 
> Bugs: AURORA-1947
> https://issues.apache.org/jira/browse/AURORA-1947
> 
> 
> Repository: aurora
> 
> 
> Description
> ---
> 
> MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
> -zk_endpoints even when -zk_in_proc=true.  I updated the module to use 
> injected server endpoints which will be based on the ephemeral port assigned 
> to ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
> @ServiceDiscoveryBindings.ZooKeeper public.
> 
> I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService 
> so that it won't close existing ZooKeeper connections before clients close 
> the session.  While just delaying the execution by 1 second doesn't really 
> guarantee that behavior, in practice this achieved clean shutdown of the 
> scheduler with in-process ZooKeeper server.
> 
> 
> Diffs
> -
> 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
>  28cdc4b3b454b3d25008a21c6b12634173e1f878 
>   
> src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java
>  c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
>   
> src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
> 6704a328a4023a178ed8f86ae4772cb04eb2fa8e 
> 
> 
> Diff: https://reviews.apache.org/r/62423/diff/1/
> 
> 
> Testing
> ---
> 
> 1. Launch Mesos master and slave on my laptop.
> 2. Launch Aurora scheduler with following arguments:
> ```
> -backup_dir=/var/lib/aurora/backups
> -cluster_name=local
> -mesos_master_address=localhost:5050
> -serverset_path=/aurora/scheduler
> -ip=127.0.0.1
> -hostname=localhost
> -http_port=8081
> -zk_in_proc=true
> -zk_endpoints=localhost:2181
> -native_log_zk_group_path=/aurora/replicated-log
> -native_log_file_path=/var/db/aurora
> ```
> 3. Observe that there are no ZooKeeper error log outputs caused by missing 
> endpoint.
> 4. Create a simple job, observer it launches normally and then kill it.
> 5. Stop the scheduler by sending /quitquitquit.
> 6. Observe that scheduler process shuts down normally.
> 
> 
> Thanks,
> 
> Keisuke Nishimoto
> 
>



Review Request 62423: Improve in-process test ZooKeeper support

2017-09-19 Thread Keisuke Nishimoto

---
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/62423/
---

Review request for Aurora.


Bugs: AURORA-1947
https://issues.apache.org/jira/browse/AURORA-1947


Repository: aurora


Description
---

MesosLogStreamModule tries to connect to ZooKeeper servers specified by 
-zk_endpoints even when -zk_in_proc=true.  I updated the module to use injected 
server endpoints which will be based on the ephemeral port assigned to 
ZooKeeperTestServer if -zk_in_proc=true.  This required to make 
@ServiceDiscoveryBindings.ZooKeeper public.

I also tweaked shutdown process of ServiceDiscoveryModule.TestServerService so 
that it won't close existing ZooKeeper connections before clients close the 
session.  While just delaying the execution by 1 second doesn't really 
guarantee that behavior, in practice this achieved clean shutdown of the 
scheduler with in-process ZooKeeper server.


Diffs
-

  
src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryBindings.java
 28cdc4b3b454b3d25008a21c6b12634173e1f878 
  
src/main/java/org/apache/aurora/scheduler/discovery/ServiceDiscoveryModule.java 
c105dbdbe8339db7f5cca2e5e391fffb4cd87b07 
  src/main/java/org/apache/aurora/scheduler/log/mesos/MesosLogStreamModule.java 
6704a328a4023a178ed8f86ae4772cb04eb2fa8e 


Diff: https://reviews.apache.org/r/62423/diff/1/


Testing
---

1. Launch Mesos master and slave on my laptop.
2. Launch Aurora scheduler with following arguments:
```
-backup_dir=/var/lib/aurora/backups
-cluster_name=local
-mesos_master_address=localhost:5050
-serverset_path=/aurora/scheduler
-ip=127.0.0.1
-hostname=localhost
-http_port=8081
-zk_in_proc=true
-zk_endpoints=localhost:2181
-native_log_zk_group_path=/aurora/replicated-log
-native_log_file_path=/var/db/aurora
```
3. Observe that there are no ZooKeeper error log outputs caused by missing 
endpoint.
4. Create a simple job, observer it launches normally and then kill it.
5. Stop the scheduler by sending /quitquitquit.
6. Observe that scheduler process shuts down normally.


Thanks,

Keisuke Nishimoto