You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "DIPAYAN BHOWMICK (JIRA)" <ji...@apache.org> on 2015/12/21 08:55:46 UTC

[jira] [Commented] (AMBARI-14389) tez view disappeared after upgrading from ambari 2.1.2 to 2.2.2.0

    [ https://issues.apache.org/jira/browse/AMBARI-14389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15066158#comment-15066158 ] 

DIPAYAN BHOWMICK commented on AMBARI-14389:
-------------------------------------------

Adding of Auto Instance Entities for Views were previously done when any service was installed. This was done in ViewRegistry class on listening of ServiceInstalledEvent. So, when a view was updated and the version of the view is changed, the instance entities were not added for the view. Only View entities are added. Hence, in this case, as tez views version changed between the ambari releases, the view Entity is added to the database, but the auto instance defination is not added and hence the previous autoinstance view gets removed.

As a fix, the checking of whether an auto instance entity has to be added to the database was introduced during the view archive read phase after the view entity is added for the view archive. This will work in the following way:

For each view jars present in the views directory, if it has auto-instance config in view.xml, we find out for all the clusters(which is currently one) and for each services in the cluster, if the 
auto instance of the view (checking the services and the cluster configuration) has to be added to the database. If the addition is required then an entry will be made if existing entries are not present.

Hence, this will solve the problem of missing view instances during upgrade. Even if a new view jar is added manually and if it has AUTO-INSTANCE config, then the instance creation will happen when the ambari-server is restarted. This will also work if the view version has changed.

> tez view disappeared after upgrading from ambari 2.1.2 to 2.2.2.0
> -----------------------------------------------------------------
>
>                 Key: AMBARI-14389
>                 URL: https://issues.apache.org/jira/browse/AMBARI-14389
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server
>    Affects Versions: 2.2.0
>            Reporter: Alejandro Fernandez
>             Fix For: 2.2.1
>
>
> STR:
> * Install ambari 2.1.2 with tez view installed.
> * Upgrade Ambari to 2.2.0.0
> Tez view is no longer present, all of the other views are present.
> Tez is failing to come up due to a missing property,
> {code:java}
> 10 Dec 2015 00:37:09,789 ERROR [qtp-ambari-client-8651] ProxyHelper:68 - Cannot access the url: http://pre-prod-poc-10.novalocal:8188/ws/v1/timeline/TEZ_VERTEX_ID?limit=9007199254740991&primaryFilter=TEZ_DAG_ID:dag_1449704814067_0017_1&_=1449707810538&
> java.net.SocketTimeoutException: Read timed out
> 	at java.net.SocketInputStream.socketRead0(Native Method)
> 	at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
> 	at java.net.SocketInputStream.read(SocketInputStream.java:170)
> 	at java.net.SocketInputStream.read(SocketInputStream.java:141)
> 	at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
> 	at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
> 	at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
> 	at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:704)
> 	at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:647)
> 	at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1535)
> 	at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1440)
> 	at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
> 	at org.apache.ambari.server.controller.internal.URLStreamProvider.processURL(URLStreamProvider.java:209)
> 	at org.apache.ambari.server.view.ViewURLStreamProvider.getHttpURLConnection(ViewURLStreamProvider.java:239)
> 	at org.apache.ambari.server.view.ViewURLStreamProvider.getConnection(ViewURLStreamProvider.java:146)
> 	at org.apache.ambari.server.view.ViewURLStreamProvider.getConnectionAs(ViewURLStreamProvider.java:163)
> 	at org.apache.ambari.server.view.ViewURLStreamProvider.getConnectionAsCurrent(ViewURLStreamProvider.java:180)
> 	at org.apache.ambari.view.tez.utils.ProxyHelper.getResponse(ProxyHelper.java:55)
> 	at org.apache.ambari.view.tez.rest.BaseProxyResource.getData(BaseProxyResource.java:55)
> 	at sun.reflect.GeneratedMethodAccessor1465.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:497)
> {code}
> The manual upgrade catalogs (2.1->2.3, and 2.2->2.3), had this,
> {code}
>           "tez.tez-ui.history-url.base": {
>             "value": "{TEZ_HISTORY_URL_BASE}",
>             "template": "yes"
>           },
> {code}
> That property was introduced in HDP 2.2, so any EU/RUs at that version or higher are ok.
> The default value in tez-site.xml is empty since stack advisor is the one to populate a value, hence why EU from 2.1->2.3 isn't giving it a value.
> *This will require changes to the config pack.*



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)