[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#8181) LMDB page leaks etc when treating DBs as data



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

Hi Howard,

I am new to lmdb. I have been working with lmdb intensively for one month. =
I really appreciate your great work. Good efficient C code is not always fo=
und!
Well I like to follow up on that reported issue.
I am using multiple databases on the same environment. I was a bit confused=
 about your statement that most application use never subDBs? I think it is=
 a great feature that helps to support multiple indexes.
I ran unintentionally into a related problem as I set the compare function =
for the main db to an integer based one opposite to the literal compare fun=
ction which is the default. Therefore when opening a database by its name t=
he wrong database might be returned as the integer compare function might t=
hink names are equal as only 96 bits (in my function) are compared. So the =
compare function only compares the prefix of the database names!
Maybe the database meta should be kept in a private space. But I also agree=
 on your statement to keep things simple. I solved the problem by never usi=
ng the main db so under no circumstances the database meta is corrupted. I =
think the price paid for having only named databases is very cheap as I ope=
n databases at startup and keep the database index (dbi).

Regards
J=FCrg

Rockethealth by Helmedica AG
Web: www.rockethealth.ch<http://www.rockethealth.ch/>
J=FCrg Bircher
Chief Technology Officer
Mail: juerg.bircher@helmedica.ch<mailto:christoph.baumann@helmedica.ch>


--_000_D1E06B6B7E2juergbircherhelmedicacom_
Content-Type: text/html; charset="iso-8859-1"
Content-ID: <86943131EABB0349A4C3B75E01000508@eurprd03.prod.outlook.com>
Content-Transfer-Encoding: quoted-printable

<html>
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-=
1">
</head>
<body style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-lin=
e-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-fami=
ly: Calibri, sans-serif;">
<div>Hi Howard,</div>
<div><br>
</div>
<div>I am new to lmdb. I have been working with lmdb intensively for one mo=
nth. I really appreciate your great work. Good efficient C code is not alwa=
ys found!&nbsp;</div>
<div>Well I like to follow up on that reported issue.</div>
<div>I am using multiple databases on the same environment. I was a bit con=
fused about your statement that most application use never subDBs? I think =
it is a great feature that helps to support multiple indexes.&nbsp;</div>
<div>I ran unintentionally into a related problem as I set the compare func=
tion for the main db to an integer based one opposite to the literal compar=
e function which is the default. Therefore when opening a database by its n=
ame the wrong database might be
 returned as the integer compare function might think names are equal as on=
ly 96 bits (in my function) are compared. So the compare function only comp=
ares the prefix of the database names!</div>
<div>Maybe the database meta should be kept in a private space. But I also =
agree on your statement to keep things simple. I solved the problem by neve=
r using the main db so under no circumstances the database meta is corrupte=
d. I think the price paid for having
 only named databases is very cheap as I open databases at startup and keep=
 the database index (dbi).</div>
<div><br>
</div>
<div>Regards</div>
<div>J=FCrg</div>
<div><br>
</div>
<p class=3D"MsoNormal" style=3D"margin: 0cm 0cm 0.0001pt; font-size: 11pt; =
line-height: 11pt;">
<b><span lang=3D"EN-US" style=3D"font-size: 9pt; color: rgb(139, 141, 141);=
 font-family: 'FS Joey Medium';">Rockethealth by Helmedica AG<o:p></o:p></s=
pan></b></p>
<p class=3D"MsoNormal" style=3D"margin: 0cm 0cm 0.0001pt; font-size: 11pt;"=
><span lang=3D"EN-US" style=3D"font-size: 9pt; color: gray;">Web</span><spa=
n lang=3D"EN-US" style=3D"font-size: 9pt; color: rgb(31, 73, 125);">:&nbsp;=
</span><span style=3D"font-size: 9pt; color: rgb(31, 73, 125);"><a href=3D"=
http://www.rockethealth.ch/"; style=3D"color: rgb(149, 79, 114);"><span lang=
=3D"EN-US" style=3D"color: blue;">www.rockethealth.ch</span></a></span><spa=
n style=3D"font-size: 9pt; color: rgb(31, 73, 125);"></span><span lang=3D"E=
N-US" style=3D"color: rgb(31, 73, 125);"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"margin: 0cm 0cm 0.0001pt; font-size: 11pt;"=
><span lang=3D"EN-US" style=3D"font-size: 9pt; color: gray;">J=FCrg Bircher=
</span></p>
<p class=3D"MsoNormal" style=3D"margin: 0cm 0cm 0.0001pt; font-size: 11pt;"=
><span style=3D"color: gray; font-size: 9pt;">Chief Technology&nbsp;</span>=
<span style=3D"color: rgb(128, 128, 128); font-size: 12px;">Officer</span><=
/p>
<p class=3D"MsoNormal" style=3D"margin: 0cm 0cm 0.0001pt; font-size: 11pt;"=
><span lang=3D"EN-US" style=3D"font-size: 9pt; color: gray;">Mail:&nbsp;</s=
pan><span style=3D"font-size: 9pt; color: rgb(31, 73, 125);"><a href=3D"mai=
lto:christoph.baumann@helmedica.ch" style=3D"color: rgb(149, 79, 114);"><sp=
an lang=3D"EN-US" style=3D"color: blue;">juerg.bircher@helmedica.ch</span><=
/a></span><span lang=3D"EN-US" style=3D"color: rgb(31, 73, 125);"><o:p></o:=
p></span></p>
<p class=3D"MsoNormal" style=3D"margin: 0cm 0cm 0.0001pt; font-size: 11pt;"=
><span style=3D"color: gray; font-size: 11pt;">&nbsp;</span><span style=3D"=
font-size: 14px;">&nbsp;</span></p>
</body>
</html>

--_000_D1E06B6B7E2juergbircherhelmedicacom_--