Hi, At Mon, 23 Feb 2009 11:16:44 +0000, Enrico Zini wrote: > > Package: apt-xapian-index > Severity: serious > > On Mon, Feb 23, 2009 at 12:02:32PM +0900, Junichi Uekawa wrote: > > We drifted a bit away from the original bug report, and I think this > issue deserves its own bug number. > > > > That's a good point. How come your pbuilder setup installs > > > apt-xapian-index? It's usually pulled in by aptitude, but as a > > > Recommends, not a Depends. In theory, buildds and pbuilder chroots > > > shouldn't install Recommends, or am I mistaken? > > aptitude is depending on apt-xapian-index. > > Package: aptitude > [...] > > Depends: apt-xapian-index, libapt-pkg-libc6.7-6-4.6, libc6 (>= 2.7-1), > > libcwidget3, libept0 (>= 0.5.26), libgcc1 (>= 1:4.1.1), libncursesw5 (>= > > 5.6+20071006-3), libsigc++-2.0-0c2 > > a (>= 2.0.2), libstdc++6 (>= 4.2.1), libxapian15, zlib1g (>= 1:1.1.4) > > Oh, no. I've opened a bug with aptitude asking if it can be downgraded > to a Recommends (#516719). I'm happy to have aptitude on my openmoko, > but I certainly don't want to have apt-xapia-index in it.
Okay. > > > I'd be happy to work out a way not to have apt-xapian-index run in cases > > > like pbuilder. Is invoke-rc.d the only tool that honours the init > > > script policy? Would it be acceptable if apt-xapian-index's postinst > > > checked with policy-rc.d to see if it should run the reindexing or not? > > For pbuillder specific, it's okay to check for policy-rc.d output. > > Where can I find instructions on how to query policy-rc.d for this > specific case? > > Can it be just a case of: > > if [ ! -x /usr/sbin/policy-rc.d ] || /usr/sbin/policy-rc.d apt-xapian-index > start > then > update-apt-xapian-index --quiet & > fi Yeah, I think so. policy-rc.d's original design intent is to have a file in init.d with name 'apt-xapian-index' so that users can run invoke-rc.d apt-xapian-index. > > So, you really don't need the data until a client application requests > > it. The first invocation can probably wait, and the invocation afterwards > > can wait > > > > Or you can make installation wait for the rebuild of database. > > There isn't much point in making it run in background. > > The point is that the rebuild takes time, and a common use case is that > the data is needed by the package manager just after apt-xapian-index is > installed for the first time. Rebuilding in background means that when > the installation is finished and we're back to the package manager, the > data will be almost readily available, instead of having to look at a > progress bar for a minute or two. > > > > If it's a long process, you should take care to make it run in the > > background maybe niced. > > You're right here, I had forgot to nice it. I've fixed that in git. > > > > Well, because you are running the indexing in background, it is > > reasonable that someone would want to stop it, and if stopping is > > possible, a restart/start. > > update-apt-xapian-index --stop to stop a running background indexer is > certainly a good idea: I've added it to the todo list > (bug#TODO-TO-BE-ASSIGNED). > > Restarting it is just a matter of running update-apt-xapian-index again. > > > > However, I 100% agree that update-a-x-i must NOT run on chroots and slow > > > down builds. Let's find a way to do so. Here are the options that I > > > can think of: > > > - Study how policy-rc.d works, and query it in postinst to see if I > > > should run the update or not > > > - What does man-db do to prevent the index update? > > Probably, man-db just rebuilds the index now in triggers. > > I don't mind to use triggers, but I understand that they are only run at > the end of the installation, so it would defeat the idea to start it > soon so that at the end of the installation it's almost done. > > Or is there a way to start triggers sooner? Hmm... I understand what you're trying to do here now. However, package installation is a busy process with a lot of disk/CPU load, I'm not sure if it's really giving you much advantage by having started earlier. > > > - Disabling the update in postinst via a preseedable debconf > > > low-priority question > > Feasible, but that is probably counterintuitive for users, and I need > > a hack for apt-xapian-index in pbuilder. > > Indeed. It could still be useful in other cases, but not for pbuilder. > > > It seems that the best way so far is to check policy-rc.d. I've never > used it, nor I found documentation about how to query it, so I inferred > from invoke-rc.d source code. If you confirm me the code snippet above > on how to query it, I'll be happy to make an upload right away. man invoke-rc.d refers you to: /usr/share/doc/sysv-rc/README.policy-rc.d which is actually available in: /usr/share/doc/sysv-rc/README.policy-rc.d.gz (filed a bug here...) So there is a documentation. regards, junichi -- dan...@{netfort.gr.jp,debian.org} -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org