Bug 261525

Summary: devel/apr1: Update to use databases/db18 (databases/db5 is EOL)
Product: Ports & Packages Reporter: Ken <mayhem30>
Component: Individual Port(s)Assignee: Jochen Neumeister <joneum>
Status: In Progress ---    
Severity: Affects Many People CC: ben, danmcgrath.ca, deaven, dev2, freebsd.bugs, freebsd, gert, ish, jcfyecrayz, joneum, lwhsu, marcnarc, mayhem30, michael, sean
Priority: --- Keywords: needs-qa
Version: LatestFlags: bugzilla: maintainer-feedback? (apache)
Hardware: Any   
OS: Any   
See Also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=261523

Description Ken 2022-01-27 20:42:20 UTC
The port devel/apr1 depends on databases/db5 which is nearing end of life.

It is recommended to use databases/db18 instead. 

Message from db5-5.3.28_8:

===>   NOTICE:

This port is deprecated; you may wish to reconsider installing it:

EOLd, potential security issues, maybe use db18 instead.

It is scheduled to be removed on or after 2022-06-30.
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2022-01-28 00:55:20 UTC
^Triage: Link against dependent issue, which post QA (exp-run) will/should be the issue that is the 'update' issue. Please block any other issues related the db5 update against the same issue as well so its clear what they depend on.

Is this issue proposal only dependent on the change/resolution of bug 261523 or is there an additional/independent change required for apr1 in this issue once the dependent issue lands?
Comment 2 Ken 2022-01-28 02:05:52 UTC
No, not that I am aware of.

The resolution of bug 261523 takes care of this issue as well.
Comment 3 Li-Wen Hsu freebsd_committer freebsd_triage 2022-01-28 08:30:18 UTC
(In reply to mayhem30 from comment #2)
Not exactly, bug261523 is for changing the default BDB version but not removing db5. i.e., it's for the ports that has USES=bdb without specifying which version it wants explicitly. We need to make sure those ports are ok to move from db5 to db18.

For the task of removing db5 and moving all ports explicitly expend on it, can be resolved in a separated ticket, and this ticket, bug261525, should be blocked by that one.  This could make things less complex.
Comment 4 Oliver Heesakkers 2022-02-06 00:56:53 UTC
Would it make sense to switch to using ndbm as its default database support, while you're updating?

Ndbm was added as an option in 2009 [1] after being requested in bug #83644, but (understandably) the port continued using BDB as its default.

Considering the BDB18 license and it generally being an Oracle product, now might be a perfect time to switch to ndbm as the default in order to keep in line with the spirit of FreeBSD (if such a thing exists and I interpret it correctly).


[1]: https://cgit.freebsd.org/ports/commit/devel/apr1/Makefile?id=4877c5ead2c29e59bebd51393e3d6eb48e50053f
Comment 5 Li-Wen Hsu freebsd_committer freebsd_triage 2022-02-07 23:03:59 UTC
(In reply to Oliver Heesakkers from comment #4)
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=261523#c6 is a patch to add bdb18 to devel/ap1. I think we need to test and apply this patch, no matter what we want to move to other dbm or not. It's still worth to have it as an option.

Speaking of switching default dbm, ndbm is available in the base, sounds a good idea. BTW there is also sdbm shipped along with apr1, don't know which one performs better.
Comment 6 Danny McGrath 2022-07-08 16:21:47 UTC
Is there any progress on this? A bunch of stuff using upstream ports are complaining at me, even calling me names! :)

Thanks o/
Comment 7 Oliver Heesakkers 2022-07-10 15:50:03 UTC
(In reply to Danny McGrath from comment #6)
I've been building apr1 from ports with BDB disabled and NDBM enabled for a few weeks now. That allowed me to remove BDB from my servers.

So far, no ill effect, but then I only need it to run apache24.
Comment 8 Danny McGrath 2022-07-10 16:16:50 UTC
(In reply to Oliver Heesakkers from comment #7)
Ya I saw that some were using it, but then I gotta compile it and use ports on a bunch of stuff that's using upstream repo only. I do have poudriere setup with some hosts using it, but I was trying to move TO upstream repo, not FROM it :)
Comment 9 Sean McBride 2022-07-12 23:46:08 UTC
So I use poudriere and just changed my devel/apr1 to turn off `BDB`, and turn on `NDBM`.  I only use devel/apr1 for apache24, and everything seems to be fine at first glance at least.
Comment 10 Ken 2022-07-13 00:43:42 UTC
(In reply to Sean McBride from comment #9)

I've done the same (using Synth) and apache24 is running just fine.
Comment 11 John Hein 2023-04-02 16:31:35 UTC
This may be addressed by a recent commit - see bug 269857.  But see bug 269857, comment 5 for a patch to fix some issues with the commit.
Comment 12 Michael Meiszl 2023-06-27 16:26:35 UTC
This one is on for a long time already. But still there is no "solution". Apache (pkg) still depends and demands db5. 
And every night you  get the report that is is outdated...

Is there somebody that will fix it or at least a "how to get rid of the warning" ?
Building apache from ports is too complicated (too many dependencies, ruins my running system), but it should be possible to create an updated apr port and release it.
Why doesn't it happen???