Bug Bounty: Fix one bug and win 5000 points
Hello!
Want to get 5000 points on GlobalMasters?
I'm launching a bug bounty for a bug with which I've been struggling for the last 4 years. Have tried to resolve it many times, but no dice - can't track it down.
To claim this bounty you need to:
- Create a pull request with the code to fix the issue outlined here.
- In the pull request OR in the issue OR in the commit message describe what's the reason for this bug and how your change fixes it.
First come first serve. Bounty would be paid only ONCE for a first working solution.
UPD: we have a winner here. I'm still testing but the fix works great so far. Please submit further bug bounty entries ONLY if you think Robert's solution does not cover some part of the issue (with rationale for that) - as I'm of a mind that it does cover everything.
Comments
As seen in my comment I can reproduce the error pattern and show some really dirty effects.
Someone willing to debug this source control and expose his SYSLIB may be the winner.
Theory: bad export is caused by slashes in InternalName when working from the workspace context menu in Studio. (https://github.com/MakarovS96/cache-tort-git/issues/4#issuecomment-9171…)
I was unable to reproduce it in InterSystems Studio Client 2021.1.0 Build 205
maybe some older version ?
Quick add on:
"Copy Class" of this "Zombie" crashes Studio.
I placed a prodlog on the strange behavior of $system.OBJ.Load()
PRODLOG 951065
based on the PRODLOG the bug was reported as DP-408015
my pull request is posted https://github.com/MakarovS96/cache-tort-git/pull/7
I did further investigations on 'broken' input files and placed a related issue
https://github.com/MakarovS96/cache-tort-git/issues/8
It happened a little bit by accident but I found this a possible realistic scenario that explains
why the problem occurs every now and then. You may argue this is bad handling by user.
Accepted. But not unlikely.
I found this situation:
- I have a project. with several packages and classes
- I deleted a class BUT the PACKAGE was not saved and didn't reflect the change
- From ClassMethod ExportProject(project ,1) I get this strange XML for the deleted class c:\temp\TEST\dc\MyCompany\EmployeRegister1.cls.xml<?xml version="1.0" encoding="UTF-8"?> <Export generator="IRIS" version="26"> </Export>
- now I need a GIT expert to analyze what happens with this incomplete input.
- my assumption: according to the file name there is an empty entry of type CLS named /dc/MyCompany/EmployeRegister1.cls.xml or similar
- when ist is restored it may cause the described problem togehter with the reported bug in $system.OBJ.Load()
Great investigation, Robert!
And it looks like we have a winner with this pull request.
Robert, congratulations!!! Points awarded on Global Masters.
Eduard, thank you for the case!
Thank you!
It confirms to me that I'm still able to do it.