> On Oct. 29, 2015, 10:24 p.m., Dmitro Lisnichenko wrote:
> > ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/mysql_service.py,
> >  line 25
> > <https://reviews.apache.org/r/39146/diff/1/?file=1093356#file1093356line25>
> >
> >     Also, not sure how it works with a non-root agent (ps of process ran by 
> > another user)

I was attempting to point to another line, see below


- Dmitro


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


On Oct. 9, 2015, 1:20 a.m., Thomas Friedrich wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/39146/
> -----------------------------------------------------------
> 
> (Updated Oct. 9, 2015, 1:20 a.m.)
> 
> 
> Review request for Ambari and Andrew Onischuk.
> 
> 
> Bugs: AMBARI-13238
>     https://issues.apache.org/jira/browse/AMBARI-13238
> 
> 
> Repository: ambari
> 
> 
> Description
> -------
> 
> The MySQL service check in mysql_service.py simply checks for a process with 
> name mysqld. In our environment, a different service ran another MySQL 
> instance on that node and as a result, the status of the MySQL service in 
> Hive showed green (because it could find a mysqld process) even though the 
> instance used by Hive wasn't started. That also made the "Start Service" 
> action for Hive fail, because the metastore service couldn't connect to the 
> MySQL database.
> 
> The proposed fix makes the service check more robust by retrieving the 
> pid_file of the MySQL instance first by running "mysqladmin variables" and 
> parsing out the pid_file. Then it checks if the process exists. 
> 
> As a side-note: the initial fix tried to get the pid_file from the 
> /etc/my.cnf file but I found that while this is one default location for the 
> MySQL configuration, there are other places where the file can be referenced. 
> Since the MySQL instance launched by Hive is not getting any parameters for 
> config file or pid_file, MySQL must read it from one of the default locations 
> and running "mysqladmin variables" must return the config values for the 
> running instance used by Hive. The other instance running needs to 
> explicitely set values for config file and pid because otherwise would 
> collide with the default instance.
> 
> 
> Diffs
> -----
> 
>   
> ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/mysql_service.py
>  c48c1ef 
>   ambari-server/src/test/python/stacks/2.0.6/HIVE/test_mysql_server.py 
> 1155e9f 
> 
> Diff: https://reviews.apache.org/r/39146/diff/
> 
> 
> Testing
> -------
> 
> Updated UTs in test_mysql_server.py with new status command and ran them 
> successfully. Also manually tested in an installed cluster environment.
> 
> 
> Thanks,
> 
> Thomas Friedrich
> 
>

Reply via email to