Re: EXTERNAL: Re: adding some C++ in the code?
"Dustin J. Mitchell" <[email protected]> Tue, 17 Sep 2019 16:01:08 -0400
| Newsgroups | gmane.comp.archivers.amanda.devel |
|---|---|
| Message-ID | <CAJtE5vSZWqUyV40cTmaNFOddpT3=cS_7ns11uKhAazYCD6QmJg@mail.gmail.com> |
--000000000000221cad0592c52f9c Content-Type: text/plain; charset="UTF-8" I agree with your assessment -- Amanda's architecture is pretty dated and makes a lot of things (such as tracing and testing) difficult. The config, in particular, is awful -- and the various other on-disk data structures it uses are rather reminiscent of the 1970s :) As the one who invented, but then failed to complete, the Perl migration, I'm a little leery of big refactors. When they aren't finished, then as you've seen with the Perl work, they leave things in a *worse*, not better, situation. And they are devilishly slow if you want to maintain user-facing compatibility. If I had started out writing an "Amanda-like" backup system from scratch in Perl lo those many years ago, I could have finished it quickly, but at the cost of losing all users (and Zmanda's customers) as well as the decades of knowledge baked into that code. There's a right-sized chunk to bite off here, I'm just not sure that "use C++" is it. I'm not sure it isn't, either. Dustin --000000000000221cad0592c52f9c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div>I agree with your assessment -- Amanda's architec= ture is pretty dated and makes a lot of things (such as tracing and testing= ) difficult.=C2=A0 The config, in particular, is awful -- and the various o= ther on-disk data structures it uses are rather reminiscent of the 1970s :)= <br></div><div><br></div><div><div>As the one who invented, but then failed= to complete, the Perl migration, I'm a little leery of big refactors.= =C2=A0 When they aren't finished, then as you've seen with the Perl= work, they leave things in a *worse*, not better, situation.=C2=A0 And the= y are devilishly slow if you want to maintain user-facing compatibility.=C2= =A0 If I had started out writing an "Amanda-like" backup system f= rom scratch in Perl lo those many years ago, I could have finished it quick= ly, but at the cost of losing all users (and Zmanda's customers) as wel= l as the decades of knowledge baked into that code.</div><div><br></div><di= v>There's a right-sized chunk to bite off here, I'm just not sure t= hat "use C++" is it.=C2=A0 I'm not sure it isn't, either.= </div><div><br></div><div>Dustin<br></div></div></div> --000000000000221cad0592c52f9c--