Schema change practices in pdns

Atalay Karatay <[email protected]> Fri, 18 Oct 2019 19:24:34 +0000
Newsgroups gmane.network.dns.powerdns.devel
Message-ID <[email protected]>
--===============8510628858991364495==
Content-Language: de-DE
Content-Type: multipart/alternative;
	boundary="_000_c95c6dbe996641daaf3ec778dcf051d8stothregensburgde_"

--_000_c95c6dbe996641daaf3ec778dcf051d8stothregensburgde_
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Dear developers from powerdns,


I'm a student at the University of Applied Sciences in Regensburg (Germany)=
.

Currently I'm working on my master's thesis, contributing to a research pro=
ject in the field quantitative software engineering.

By mining the software histories of popular open source projects, we want t=
o get insight about current development practices and challenges.

Our main focus here is to understand the co-evolution/change-coupling of so=
ftware artifacts, especially in the case of database-related changes.

Since there are hardly works or established tools considering the co-evolut=
ion of schema and the code accessing it, we are investigating this topic.


As powerdns/pdns is one major project in the open-source-community and is a=
lso supporting several backend systems, I have some questions:

We found out that schema related changes were often committed together - ac=
ross all databases .

So in your case for instance, some schema changes were done for mysql, post=
gresql, sqlite, etc.  simultaneously.

1) Could you describe the common process of introducing these schema change=
s or do you have a manual for that?

2) Is there any tool in use, which supports this process automatically or i=
s it done manually?

3) How much time is consumed when introducing schema changes in your projec=
t?

4) Which problems occur when changing the schema?


Hopefully you can spend some time to answer these questions, I would be ver=
y grateful.


Best regards

Atalay Karatay

--_000_c95c6dbe996641daaf3ec778dcf051d8stothregensburgde_
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<html>
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-=
1">
<style type=3D"text/css" style=3D"display:none;"><!-- P {margin-top:0;margi=
n-bottom:0;} --></style>
</head>
<body dir=3D"ltr">
<div id=3D"divtagdefaultwrapper" style=3D"font-size:12pt;color:#000000;font=
-family:Calibri,Helvetica,sans-serif;" dir=3D"ltr">
<p></p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
Dear developers from powerdns,</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<br>
</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
I'm a student at the University of Applied Sciences in Regensburg (Germany)=
.</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
Currently I'm working on my master's thesis, contributing to&nbsp;a researc=
h project in the field quantitative software engineering.&nbsp;</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
By mining the software histories of popular&nbsp;open source projects, we w=
ant to get insight about current development practices and challenges.</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
Our main focus here is to understand the co-evolution/change-coupling of so=
ftware artifacts, especially in the&nbsp;case of database-related changes.<=
/p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<span style=3D"font-size: 12pt;">Since there are hardly works or establishe=
d tools considering the co-evolution of schema and the&nbsp;code accessing =
it,&nbsp;we are investigating this topic.</span></p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<br>
</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
As powerdns/pdns&nbsp;is one major project&nbsp;in the open-source-communit=
y and is also supporting several backend systems, I have some questions:&nb=
sp;</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
We found out that&nbsp;schema related changes&nbsp;were&nbsp;often&nbsp;com=
mitted together -&nbsp;across all databases&nbsp;.</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<span style=3D"font-size: 12pt;">So in your case for instance, some schema&=
nbsp;changes were done for mysql, postgresql, sqlite, etc.&nbsp;</span><spa=
n style=3D"font-size: 12pt;">&nbsp;simultaneously</span><span style=3D"font=
-size: 12pt;">.</span></p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<span style=3D"font-size: 12pt;"></span><span style=3D"font-size: 12pt;">1)=
&nbsp;Could you describe the common process&nbsp;of introducing these schem=
a&nbsp;changes or do you have a manual for that?</span></p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<span style=3D"font-size: 12pt;">2)&nbsp;Is there any&nbsp;tool in use, whi=
ch supports this process&nbsp;automatically or is it done manually?</span><=
/p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<span style=3D"font-size: 12pt;">3)&nbsp;How much time is consumed when int=
roducing schema changes in your project?</span></p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<span style=3D"font-size: 12pt;">4)&nbsp;Which problems occur when changing=
 the schema?</span></p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<br>
</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
Hopefully you can spend some time to answer these questions, I would be ver=
y grateful.</p>
<p style=3D"font-size: 16px; font-family: Calibri, Helvetica, sans-serif, E=
mojiFont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoCo=
lorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymb=
ols;">
<br>
</p>
<div id=3D"x_x_x_Signature" style=3D"font-size: 16px; font-family: Calibri,=
 Helvetica, sans-serif, EmojiFont, &quot;Apple Color Emoji&quot;, &quot;Seg=
oe UI Emoji&quot;, NotoColorEmoji, &quot;Segoe UI Symbol&quot;, &quot;Andro=
id Emoji&quot;, EmojiSymbols;">
<div id=3D"x_x_x_divtagdefaultwrapper" dir=3D"ltr" style=3D"font-family: Ca=
libri, Arial, Helvetica, sans-serif, EmojiFont, &quot;Apple Color Emoji&quo=
t;, &quot;Segoe UI Emoji&quot;, NotoColorEmoji, &quot;Segoe UI Symbol&quot;=
, &quot;Android Emoji&quot;, EmojiSymbols;">
<div class=3D"x_x_x_PlainText">Best regards</div>
<div class=3D"x_x_x_PlainText"><br>
</div>
<div class=3D"x_x_x_PlainText" style=3D"font-size: 10pt;"><span style=3D"fo=
nt-size: 12pt;">Atalay Karatay</span></div>
</div>
</div>
<div id=3D"Signature">
<div id=3D"divtagdefaultwrapper" dir=3D"ltr" style=3D"font-size: 12pt; colo=
r: rgb(0, 0, 0); font-family: Calibri, Arial, Helvetica, sans-serif, EmojiF=
ont, &quot;Apple Color Emoji&quot;, &quot;Segoe UI Emoji&quot;, NotoColorEm=
oji, &quot;Segoe UI Symbol&quot;, &quot;Android Emoji&quot;, EmojiSymbols;"=
>
<font size=3D"2"><span style=3D"font-size:10pt">
<div class=3D"PlainText"><span style=3D"font-size:12pt"></span></div>
</span></font></div>
</div>
</div>
</body>
</html>

--_000_c95c6dbe996641daaf3ec778dcf051d8stothregensburgde_--

--===============8510628858991364495==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Pdns-dev mailing list
[email protected]
https://mailman.powerdns.com/mailman/listinfo/pdns-dev

--===============8510628858991364495==--