On 1. 2. 2016 at 12:14:18, Richard W.M. Jones wrote: > On Mon, Feb 01, 2016 at 12:51:47PM +0100, Jan Zelený wrote: > > On 1. 2. 2016 at 09:59:23, Richard W.M. Jones wrote: > > > On Mon, Feb 01, 2016 at 09:44:29AM +0100, Jan Zelený wrote: > > > > On 29. 1. 2016 at 22:03:00, Richard W.M. Jones wrote: > > > > > FWIW I found the new database backend (not mentioned anywhere in the > > > > > > > > > > original submission). It is here: > > > > > http://rpm.org/gitweb?p=rpm.git;a=tree;f=lib/backend/ndb > > > > > > > > > > Since this change has (rashly) been approved by FESCO, I guess we're > > > > > going to be copying this code into some libguestfs tools, and we'll > > > > > have to keep up with changes to RPM. It's a drag compared to using > > > > > a > > > > > real key-value store. > > > > > > > > May I ask why? Accessing rpm database in a different way than through > > > > librpm API is highly discouraged even now. > > > > > > It's discussed in this thread already. Please see: > > > > > > https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject. > > > org/ message/QZG6BVLOOYYGLFJQK5RQ5LAPJIL2KMYF/ > > > https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject. > > > org > > > /message/NYEVENDEUVPRMWD7PJM2IJSR54H25SKI/ > > > > > > Even if the RPM database is only accessed via librpm, it's still > > > important that the most central database present on every Fedora > > > system is reliable, well-tested and flexible. Sqlite is a highly > > > regarded piece of software, which runs on billions of Android phones. > > > > Fair enough but that doesn't answer my question. What is the reason for > > copying rpm code in libguestfs instead of using librpm? > > I don't have a clear answer on that yet, because I'm still waiting to > find out if the database format will change incompatibly in future. > > If it changes incompatibly in future, and if librpm won't maintain > backwards compatibility with old databases, then we'll need to take > snapshots of the librpm code to ensure we can read old RPM databases > out of guests. > > Notes: > > - I'm not talking about the BDB format - I understand the licensing > issues which require a clean break. > > - I couldn't find a way in the the current librpm code to open the RPM > database from a different location - obviously required because we > need to open the database using our own trusted code, *not* the > guest's untrusted code as was proposed elsewhere in this thread. > However that's not a reason not to use librpm, since we could add > APIs to do that. Thanks for the input Rich. We will be discussing this topic at our team meeting next Monday, I will make sure your feedback is taken into account and acted upon. Jan -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx http://lists.fedoraproject.org/admin/lists/devel@xxxxxxxxxxxxxxxxxxxxxxx