<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>question Re: IMPALA Profile Log Format in Support Questions</title>
    <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39384#M16048</link>
    <description>&lt;P&gt;Thanks once again!&lt;/P&gt;&lt;P&gt;I was able to remove the query ID from the first part, decode from base64 and get the bytes. I saved it into a file - and it gives me data that I can see. However the thrift binding lookup fails - it says it can't deserialize based on bytes.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Exception in thread "main" org.apache.thrift.protocol.TProtocolException: Required field 'nodes' was not present! Struct: TRuntimeProfileTree(nodes:null)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree.validate(TRuntimeProfileTree.java:315)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:381)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:1)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree.read(TRuntimeProfileTree.java:289)&lt;BR /&gt;at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:81)&lt;BR /&gt;at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:67)&lt;BR /&gt;at org.tiaa.impala.log.ImpalaLogParser.testTRuntimeProfileTreeSerialization(ImpalaLogParser.java:29)&lt;BR /&gt;at org.tiaa.impala.log.ImpalaLogParser.main(ImpalaLogParser.java:17)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I saved the bytes off to a file - and I can get some information, but it is all encoded with funky characters,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;#25;ü#&amp;#24;,Query (id=4c4d52afea4a40a1:802034563d1cfc93)&amp;#21;&amp;#6;&amp;#25;&amp;lt;&amp;#24;&amp;#14;AsyncTotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#24;&amp;#17;InactiveTotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#24; TotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#22;&amp;#1;&amp;#17;&amp;#27; &amp;#25;&amp;#8;&amp;#27; &amp;#24;&amp;#7;Summary&amp;#21; &amp;#25;&amp;lt;&amp;#24;&amp;#14;AsyncTotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#24;&amp;#17;InactiveTotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#24; TotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#22;&amp;#1;&amp;#17;&amp;#27;&amp;#21;ˆ&amp;#14;Connected User &amp;#11;Coordinator&amp;amp;denatb31bda01.test.tiaa-cref.org:22000&lt;BR /&gt;Default Db&amp;#7;default&amp;#14;Delegated User &amp;#8;End Time&amp;#29;2016-03-29 13:47:44.579234000&amp;#22;Estimated Per-Host Mem 362807296&amp;#25;Estimated Per-Host VCores&amp;#1;2&amp;#11;ExecSummaryð&amp;#7;&lt;BR /&gt;Operator #Hosts Avg Time Max Time #Rows Est. #Rows Peak Mem Est. Peak Mem Detail&lt;BR /&gt;---------------------------------------------------------------------------------------------------------------&lt;BR /&gt;06:AGGREGATE 1 130.837ms 130.837ms 1 0 16.00 KB -1.00 B FINALIZE&lt;BR /&gt;05:EXCHANGE 1 8.250us 8.250us 1 0 0 -1.00 B UNPARTITIONED&lt;BR /&gt;02:AGGREGATE 1 157.644ms 157.644ms 1 0 12.00 KB 10.00 MB&lt;BR /&gt;04:AGGREGATE 1 2.452ms 2.452ms 0 0 3.13 MB 10.00 MB&lt;BR /&gt;03:EXCHANGE 1 4.584us 4.584us 0 0 0 0 HASH(SSN)&lt;BR /&gt;01:AGGREGATE 1 159.257ms 159.257ms 0 0 9.45 MB 10.00 MB&lt;BR /&gt;00:SCAN HDFS 1 92.478ms 92.478ms 0 0 9.05 MB 336.00 MB planfocus.enrollments &amp;#28;HiveServer2 Protocol Version&amp;#2;V6&amp;#14;Impala VersionSimpalad version 2.2.0-cdh5 RELEASE (build 2ffd73a4255cefd521362ffe1cfb37463f67f75c)&amp;#15;Network Address&amp;#18;10.233.42.16:42229&amp;#4;Plan¨&amp;#12;&lt;BR /&gt;----------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I used this code - and it fails.&lt;/P&gt;&lt;P&gt;private static void testTRuntimeProfileTreeSerialization() throws Exception {&lt;BR /&gt;byte[] decodedBytes = Base64.decodeBase64(dataCompressed);&lt;BR /&gt;InflaterInputStream in = new InflaterInputStream(&lt;BR /&gt;new ByteArrayInputStream(decodedBytes));&lt;BR /&gt;ByteArrayOutputStream out = new ByteArrayOutputStream();&lt;BR /&gt;IOUtils.copy(in, out);&lt;BR /&gt;byte[] uncompressedBytes = out.toByteArray();&lt;BR /&gt;TRuntimeProfileTree aTree = new TRuntimeProfileTree();&lt;BR /&gt;TDeserializer dez = new TDeserializer();&lt;BR /&gt;dez.deserialize(aTree, uncompressedBytes);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Anything else going on in the serialization process???&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks so much for your insights.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Venky&lt;/P&gt;</description>
    <pubDate>Tue, 05 Apr 2016 21:29:39 GMT</pubDate>
    <dc:creator>VenkyJagannath</dc:creator>
    <dc:date>2016-04-05T21:29:39Z</dc:date>
    <item>
      <title>IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39168#M16042</link>
      <description>&lt;P&gt;Hello fellow members,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I see that there is a line entered into the "/var/log/impalad/profiles/" log folder.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I see the format of the log is kind of cryptic. The first long number looks like it is an epoch timestamp. The second string looks lilke a base64 encoded string, but it does not represent anything after I decode it. I read the documentation "&lt;A href="http://www.cloudera.com/documentation/enterprise/5-5-x/topics/impala_logging.html&amp;quot;" target="_blank"&gt;http://www.cloudera.com/documentation/enterprise/5-5-x/topics/impala_logging.html"&lt;/A&gt;&lt;/P&gt;&lt;P&gt;It looks like these logs are compressed with zlib? I checked the actual bytes - but none of it makes it look like a zlib compressed string. Can anyone help me with this? I tried to go through the code in C++ and python, but I did not get any clue as to how it is formatted.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is a sample line:&lt;/P&gt;&lt;P&gt;1458322151442 24496831f65ac754:2ba8e34b4c441c92 eJytVM9T00AUDj9GaoFiHcF2gJn14sAMZJLdTdJ28MDQMHRExAbw4mW7u4Ed0wQ2GxCvXtQ/wBn/Cw8ePPoHON714p+hR7etQOkAJ0/Je5t97/u+972UV0pLzzIuT8GCYI8gxlW3guzQdQj1HFyDLVLhCLcwxdimVbg4PVpeKRVW09OY7iSKRDuizafzM4ZRKjZiQpU45gP525fjmaHirFHOzeqTsSBrt4k8nTb+Q83i28JaEsecKs7AbsqlMb6WJJKJmKhEPmRcP1vIbjFi2abiqTKVIGSZSh6aidyvQWhZVq5e3wQ7p4d8ZDfw83UekixSoN4aY73XQp1HfJ+ct8j5MQMdGPPQst1lCy3bFWCjGqzWbNvEGCKnU3ZuQ1MIuDzmEoJtmaiEJhHY4zIVSTy85xYa7UMSkbNMILohA8e9GEATmtYyZQcOaPqb/mrgg4VWJiIGYBgyDxEMHYfykDnQRq7OcZuGLeRhF4WuF3oOXZza4uokkS/BKmOSp+ld2zIhQiaGpu3WMLLtynjPB4HS/HLrja1GsOHXJy6SWTr89HG+F3c10mLlA12rA7FRf1DB2IOug0KEEbGqqOZVsEdbFrMoI8yusomzjzu3xzcae37gN/f8JpwMjqJe3zaP1WSWcnAYkThMaJbmdV6qG0S2Kp7XEXm0O5Hyn2Ifpksdb5xCX5vzofZx7dfmkiQDo+uCGDDigGkGJ9Fns8s69Pv33Jh6d5ZKRvlWOWeUCv/waaiRiHl5/cuPkZ+/vs59+vh7/vvnN6C8MdVjxV9xmikNr7itZY1FvA9CEYv0gLM7TX6U6W24SOzGku+LVHEJjjr19bpN9Ej2tNPb+uLqbb23FgmNe50revCcCNU5kfro24d3w9fv8v1mcvJEU5aCROI16cA8u3j932PovbFwZbvrqhnGX43whcc=&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your help in advance.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Venky&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 16 Sep 2022 10:11:42 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39168#M16042</guid>
      <dc:creator>VenkyJagannath</dc:creator>
      <dc:date>2022-09-16T10:11:42Z</dc:date>
    </item>
    <item>
      <title>Re: IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39171#M16043</link>
      <description>&lt;P&gt;Hey Venky,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Its a zlib compressed &lt;A href="https://github.com/cloudera/Impala/blob/cdh5-trunk/common/thrift/RuntimeProfile.thrift#L84" target="_self"&gt;TRuntimeProfileTree&lt;/A&gt; object. You might want to use the thrift bindings to decode it. HTH.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- Bharath&lt;/P&gt;</description>
      <pubDate>Wed, 30 Mar 2016 14:54:08 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39171#M16043</guid>
      <dc:creator>Bharathv</dc:creator>
      <dc:date>2016-03-30T14:54:08Z</dc:date>
    </item>
    <item>
      <title>Re: IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39177#M16044</link>
      <description>&lt;P&gt;Thanks for the tip Bharath. I tried to write a small program to get this string out and read it using thrift bindings. I still get the zip header exception. Any ideas on what I am doing wrong?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;package org.tiaa.impala.log;&lt;/P&gt;&lt;P&gt;import java.io.BufferedInputStream;&lt;BR /&gt;import java.io.ByteArrayInputStream;&lt;/P&gt;&lt;P&gt;import org.apache.commons.codec.binary.Base64;&lt;BR /&gt;import org.apache.thrift.protocol.TBinaryProtocol;&lt;BR /&gt;import org.apache.thrift.transport.TIOStreamTransport;&lt;BR /&gt;import org.apache.thrift.transport.TZlibTransport;&lt;/P&gt;&lt;P&gt;import com.cloudera.impala.thrift.TRuntimeProfileTree;&lt;/P&gt;&lt;P&gt;public class ImpalaLogParser {&lt;BR /&gt;private static String dataCompressed = "4c4d52afea4a40a1:802034563d1cfc93 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";&lt;/P&gt;&lt;P&gt;public static void main(String[] args) throws Exception {&lt;BR /&gt;byte[] decoded = Base64.decodeBase64(dataCompressed);&lt;BR /&gt;System.out.println(decoded);&lt;/P&gt;&lt;P&gt;ByteArrayInputStream bais = new ByteArrayInputStream(decoded);&lt;BR /&gt;BufferedInputStream bufferedIn = new BufferedInputStream(bais, 2048);&lt;/P&gt;&lt;P&gt;TBinaryProtocol binaryIn = new TBinaryProtocol(new TZlibTransport(&lt;BR /&gt;new TIOStreamTransport(bufferedIn)));&lt;/P&gt;&lt;P&gt;System.out.println("Hello");&lt;BR /&gt;TRuntimeProfileTree aTree = new TRuntimeProfileTree();&lt;BR /&gt;aTree.read(binaryIn);&lt;/P&gt;&lt;P&gt;bais.close();&lt;BR /&gt;}&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hello&lt;BR /&gt;Exception in thread "main" org.apache.thrift.transport.TTransportException: java.util.zip.ZipException: incorrect header check&lt;BR /&gt;at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:129)&lt;BR /&gt;at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86)&lt;BR /&gt;at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429)&lt;BR /&gt;at org.apache.thrift.protocol.TBinaryProtocol.readByte(TBinaryProtocol.java:285)&lt;BR /&gt;at org.apache.thrift.protocol.TBinaryProtocol.readFieldBegin(TBinaryProtocol.java:243)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:349)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:1)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree.read(TRuntimeProfileTree.java:289)&lt;BR /&gt;at org.tiaa.impala.log.ImpalaLogParser.main(ImpalaLogParser.java:28)&lt;BR /&gt;Caused by: java.util.zip.ZipException: incorrect header check&lt;BR /&gt;at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:164)&lt;BR /&gt;at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:127)&lt;BR /&gt;... 8 more&lt;/P&gt;</description>
      <pubDate>Wed, 30 Mar 2016 16:20:49 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39177#M16044</guid>
      <dc:creator>VenkyJagannath</dc:creator>
      <dc:date>2016-03-30T16:20:49Z</dc:date>
    </item>
    <item>
      <title>Re: IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39201#M16045</link>
      <description>&lt;P&gt;Why TZlibTransport? Can try&amp;nbsp;&lt;SPAN class="pl-smi"&gt;java.util.zip.InflaterInputStream, something like&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;InflaterInputStream in =
          new InflaterInputStream(new ByteArrayInputStream(compressedProfile));
      ByteArrayOutputStream out = new ByteArrayOutputStream();
      IOUtils.copy(in, out);
      out.toByteArray();&lt;/PRE&gt;</description>
      <pubDate>Thu, 31 Mar 2016 09:46:27 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39201#M16045</guid>
      <dc:creator>Bharathv</dc:creator>
      <dc:date>2016-03-31T09:46:27Z</dc:date>
    </item>
    <item>
      <title>Re: IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39217#M16046</link>
      <description>&lt;P&gt;Yes I had tried that first.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Exception in thread "main" java.util.zip.ZipException: incorrect header check&lt;BR /&gt;at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:164)&lt;BR /&gt;at java.io.FilterInputStream.read(FilterInputStream.java:107)&lt;BR /&gt;at org.apache.commons.io.IOUtils.copyLarge(IOUtils.java:1025)&lt;BR /&gt;at org.apache.commons.io.IOUtils.copy(IOUtils.java:999)&lt;BR /&gt;at org.tiaa.impala.log.ImpalaLogParser.testTRuntimeProfileTreeSerialization(ImpalaLogParser.java:33)&lt;BR /&gt;at org.tiaa.impala.log.ImpalaLogParser.main(ImpalaLogParser.java:25)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;That is what led me to this website:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.cloudera.com/documentation/enterprise/5-5-x/topics/impala_logging.html" target="_blank"&gt;http://www.cloudera.com/documentation/enterprise/5-5-x/topics/impala_logging.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p"&gt;Formerly, the logs contained the query profile for each query, showing low-level details of how the work is distributed among nodes and how intermediate and final results are transmitted across the network. &lt;U&gt;&lt;EM&gt;&lt;STRONG&gt;To save space, those query profiles are now stored in zlib-compressed files in&lt;SPAN class="ph filepath"&gt;/var/log/impala/profiles&lt;/SPAN&gt;.&lt;/STRONG&gt; &lt;/EM&gt;&lt;/U&gt;You can access them through the Impala web user interface. For example, at http://impalad-node-hostname:25000/queries, each query is followed by a Profile link leading to a page showing extensive analytical data for the query execution.&lt;/P&gt;&lt;P class="p"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p"&gt;I looked through the impala www code - to see how they deserialize this, but could not figure out.&lt;/P&gt;&lt;P class="p"&gt;Thanks once again for your help!&lt;/P&gt;&lt;P class="p"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p"&gt;Venky&lt;/P&gt;&lt;P class="p"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 31 Mar 2016 13:51:53 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39217#M16046</guid>
      <dc:creator>VenkyJagannath</dc:creator>
      <dc:date>2016-03-31T13:51:53Z</dc:date>
    </item>
    <item>
      <title>Re: IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39379#M16047</link>
      <description>&lt;P&gt;Sorry I missed this. Impala prepends the query hash to the base64 string while logging to the file. In your case that is&amp;nbsp;&lt;SPAN&gt;4c4d52afea4a40a1:802034563d1cfc93. Just remove it from&amp;nbsp;&lt;SPAN&gt;dataCompressed string and it should work.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 05 Apr 2016 17:42:38 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39379#M16047</guid>
      <dc:creator>Bharathv</dc:creator>
      <dc:date>2016-04-05T17:42:38Z</dc:date>
    </item>
    <item>
      <title>Re: IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39384#M16048</link>
      <description>&lt;P&gt;Thanks once again!&lt;/P&gt;&lt;P&gt;I was able to remove the query ID from the first part, decode from base64 and get the bytes. I saved it into a file - and it gives me data that I can see. However the thrift binding lookup fails - it says it can't deserialize based on bytes.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Exception in thread "main" org.apache.thrift.protocol.TProtocolException: Required field 'nodes' was not present! Struct: TRuntimeProfileTree(nodes:null)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree.validate(TRuntimeProfileTree.java:315)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:381)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree$TRuntimeProfileTreeStandardScheme.read(TRuntimeProfileTree.java:1)&lt;BR /&gt;at com.cloudera.impala.thrift.TRuntimeProfileTree.read(TRuntimeProfileTree.java:289)&lt;BR /&gt;at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:81)&lt;BR /&gt;at org.apache.thrift.TDeserializer.deserialize(TDeserializer.java:67)&lt;BR /&gt;at org.tiaa.impala.log.ImpalaLogParser.testTRuntimeProfileTreeSerialization(ImpalaLogParser.java:29)&lt;BR /&gt;at org.tiaa.impala.log.ImpalaLogParser.main(ImpalaLogParser.java:17)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I saved the bytes off to a file - and I can get some information, but it is all encoded with funky characters,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;#25;ü#&amp;#24;,Query (id=4c4d52afea4a40a1:802034563d1cfc93)&amp;#21;&amp;#6;&amp;#25;&amp;lt;&amp;#24;&amp;#14;AsyncTotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#24;&amp;#17;InactiveTotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#24; TotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#22;&amp;#1;&amp;#17;&amp;#27; &amp;#25;&amp;#8;&amp;#27; &amp;#24;&amp;#7;Summary&amp;#21; &amp;#25;&amp;lt;&amp;#24;&amp;#14;AsyncTotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#24;&amp;#17;InactiveTotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#24; TotalTime&amp;#21;&lt;BR /&gt;&amp;#22; &amp;#22;&amp;#1;&amp;#17;&amp;#27;&amp;#21;ˆ&amp;#14;Connected User &amp;#11;Coordinator&amp;amp;denatb31bda01.test.tiaa-cref.org:22000&lt;BR /&gt;Default Db&amp;#7;default&amp;#14;Delegated User &amp;#8;End Time&amp;#29;2016-03-29 13:47:44.579234000&amp;#22;Estimated Per-Host Mem 362807296&amp;#25;Estimated Per-Host VCores&amp;#1;2&amp;#11;ExecSummaryð&amp;#7;&lt;BR /&gt;Operator #Hosts Avg Time Max Time #Rows Est. #Rows Peak Mem Est. Peak Mem Detail&lt;BR /&gt;---------------------------------------------------------------------------------------------------------------&lt;BR /&gt;06:AGGREGATE 1 130.837ms 130.837ms 1 0 16.00 KB -1.00 B FINALIZE&lt;BR /&gt;05:EXCHANGE 1 8.250us 8.250us 1 0 0 -1.00 B UNPARTITIONED&lt;BR /&gt;02:AGGREGATE 1 157.644ms 157.644ms 1 0 12.00 KB 10.00 MB&lt;BR /&gt;04:AGGREGATE 1 2.452ms 2.452ms 0 0 3.13 MB 10.00 MB&lt;BR /&gt;03:EXCHANGE 1 4.584us 4.584us 0 0 0 0 HASH(SSN)&lt;BR /&gt;01:AGGREGATE 1 159.257ms 159.257ms 0 0 9.45 MB 10.00 MB&lt;BR /&gt;00:SCAN HDFS 1 92.478ms 92.478ms 0 0 9.05 MB 336.00 MB planfocus.enrollments &amp;#28;HiveServer2 Protocol Version&amp;#2;V6&amp;#14;Impala VersionSimpalad version 2.2.0-cdh5 RELEASE (build 2ffd73a4255cefd521362ffe1cfb37463f67f75c)&amp;#15;Network Address&amp;#18;10.233.42.16:42229&amp;#4;Plan¨&amp;#12;&lt;BR /&gt;----------------&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I used this code - and it fails.&lt;/P&gt;&lt;P&gt;private static void testTRuntimeProfileTreeSerialization() throws Exception {&lt;BR /&gt;byte[] decodedBytes = Base64.decodeBase64(dataCompressed);&lt;BR /&gt;InflaterInputStream in = new InflaterInputStream(&lt;BR /&gt;new ByteArrayInputStream(decodedBytes));&lt;BR /&gt;ByteArrayOutputStream out = new ByteArrayOutputStream();&lt;BR /&gt;IOUtils.copy(in, out);&lt;BR /&gt;byte[] uncompressedBytes = out.toByteArray();&lt;BR /&gt;TRuntimeProfileTree aTree = new TRuntimeProfileTree();&lt;BR /&gt;TDeserializer dez = new TDeserializer();&lt;BR /&gt;dez.deserialize(aTree, uncompressedBytes);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Anything else going on in the serialization process???&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks so much for your insights.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Venky&lt;/P&gt;</description>
      <pubDate>Tue, 05 Apr 2016 21:29:39 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39384#M16048</guid>
      <dc:creator>VenkyJagannath</dc:creator>
      <dc:date>2016-04-05T21:29:39Z</dc:date>
    </item>
    <item>
      <title>Re: IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39389#M16049</link>
      <description>&lt;P&gt;Yep, try using the &lt;A href="http://people.apache.org/~thejas/thrift-0.9/javadoc/org/apache/thrift/protocol/TCompactProtocol.html" target="_self"&gt;TCompactProtocol&lt;/A&gt; to deserialize (Default is TBinaryProtocol). Initialize the deserializer like,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;new TDeserializer(TCompactProtocol.Factory())&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 06 Apr 2016 05:45:24 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39389#M16049</guid>
      <dc:creator>Bharathv</dc:creator>
      <dc:date>2016-04-06T05:45:24Z</dc:date>
    </item>
    <item>
      <title>Re: IMPALA Profile Log Format</title>
      <link>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39405#M16050</link>
      <description>&lt;P&gt;Yes that was it!&lt;/P&gt;&lt;P&gt;TCompactProtocol was the thing to use!&lt;/P&gt;&lt;P&gt;Thanks so much for your help&lt;/P&gt;&lt;P&gt;Venky&lt;/P&gt;</description>
      <pubDate>Wed, 06 Apr 2016 13:35:25 GMT</pubDate>
      <guid>https://community.cloudera.com/t5/Support-Questions/IMPALA-Profile-Log-Format/m-p/39405#M16050</guid>
      <dc:creator>VenkyJagannath</dc:creator>
      <dc:date>2016-04-06T13:35:25Z</dc:date>
    </item>
  </channel>
</rss>

