So after a long testing the conclusion is below
I create a instant report with last 30 days, an advertiser filter and dimensions and metrics.
Now i got a report id and using that id i excute from java and i got the correct file. I repeated the download 3-4 times and file downloaded correcly.
Now i edit the report like date range or add more advertiser or dimension or metrics. The report id remain same and when i execute and download the report is corrupted(Only special characters). Confirmed in DEV and QA.
Can you do the same test with any client library( Myabe java is fine) and confirm the same behaviour.
So in the conclusion, I need to create exaclt new report each day with my date range, filter, dimension and metric to download file for each data right?