<div dir="ltr"><div><br></div><div>Hi Genevive,<br></div><div>I have found the sollution. Actually, I have replaced the CtfEvent and CtfIterator by ITmfEvent and ITmfContext. This allows me to read the both the latest and old format. The sample code is attached below, in case if some one comes across the same problem.<br><br></div><div>Best regards,<br>Shariyar<br></div><br><div>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><br> <b>private String fSyscall;<br>    private CtfTmfTrace fTrace;<br>    private ITmfContext fCtxt;    <br>    <br>    /**<br>     * Constructor to initialize the trace<br>     * @param filePath file Name<br>     * @throws TmfTraceException An exception during trace reading<br>     */<br>    public CTFSystemCallIterator(String filePath) throws TmfTraceException {<br>        fTrace = new CtfTmfTrace();<br>        fTrace.initTrace(null, filePath, CtfTmfEvent.class);<br>        fCtxt=fTrace.seekEvent(0);<br>        //fTraceIterator = fTrace.createIterator(); // don't use CtfIterator<br>    }<br><br>    /**<br>     * Moves Iterator to the next event, and returns true if the iterator<br>     * can advance or false if the iterator cannot advance<br>     **/<br>    @Override<br>    public boolean advance() {<br>        boolean isAdvance = true;<br>        fSyscall = ""; //$NON-NLS-1$<br>        ITmfEvent event;<br>        do{<br>        if ((event=fTrace.getNext(fCtxt))!=null){<br>            fSyscall = handleSysEntryEvent(event);//returns the sys call (entry) event <br>            <br>        }else<br>            isAdvance=false;<br>        } while (fSyscall.isEmpty() && isAdvance==true);    <br>        <br>    <br>        if (!isAdvance) <br>            close();<br>        <br><br>        return isAdvance;<br><br>    }</b><br><br><br></div></div>