summaryrefslogtreecommitdiff
path: root/macros.in
diff options
context:
space:
mode:
authorjbj <devnull@localhost>2001-05-14 20:12:10 +0000
committerjbj <devnull@localhost>2001-05-14 20:12:10 +0000
commit3c563d21182b97271411e6b3209a07b6f78b94db (patch)
treef45cc7a4d00a6816221633467493482b6bd585ad /macros.in
parenta9184b73ecb9bcb5dedb503529a0696cdb5b008a (diff)
downloadlibrpm-tizen-3c563d21182b97271411e6b3209a07b6f78b94db.tar.gz
librpm-tizen-3c563d21182b97271411e6b3209a07b6f78b94db.tar.bz2
librpm-tizen-3c563d21182b97271411e6b3209a07b6f78b94db.zip
- upgrade to db-3.3.4.
CVS patchset: 4787 CVS date: 2001/05/14 20:12:10
Diffstat (limited to 'macros.in')
-rw-r--r--macros.in118
1 files changed, 76 insertions, 42 deletions
diff --git a/macros.in b/macros.in
index 97180d540..a4912a706 100644
--- a/macros.in
+++ b/macros.in
@@ -1,7 +1,7 @@
#/*! \page config_macros Default configuration: /usr/lib/rpm/macros
# \verbatim
#
-# $Id: macros.in,v 1.76 2001/05/13 17:55:58 jbj Exp $
+# $Id: macros.in,v 1.77 2001/05/14 20:12:10 jbj Exp $
#
# This is a global RPM configuration file. All changes made here will
# be lost when the rpm package is upgraded. Any per-system configuration
@@ -266,58 +266,89 @@
# ---- Database configuration macros.
# Macros used to configure Berkley db parameters.
#
-# Choose db interface:
-# 1 native db1 interface (e.g. linux glibc libdb1 routines).
-# 2 native db2 interface (not currently implemented, may never be).
-# 3 native db3 interface.
-# -1 db3 -> db2 -> db1 (as available).
-#
-# There are two macros so that --rebuilddb can convert db1 -> db3.
+# rpmdb macro configuration values are a colon (or white space) separated
+# list of tokens, with an optional '!' negation to explicitly disable bit
+# values, or a "=value" if a parameter. A per-tag value is used (e.g.
+# %_dbi_config_Packages) if defined, otherwise a per-rpmdb default
+# (e.g. %_dbi_config). The configuration is # also conditioned on the
+# existence of an internal %{_rpmdb_rebuild} switch # to permit changing
+# the configuration while rebuilding an rpmdb database.
+#
+# The rpmdb configuration tokens are in a popt table in rpmdb/dbconfig.c,
+# see that for the latest gory details. Note carefully that, unless you
+# are writing an rpm installer, you shouldn't have to touch *any* of these
+# parameters.
+#
+# Here's a short list of the tokens, with a guess of whether the option is
+# useful:
+# (nothing) currently used in rpm, known to work.
+# "+++" under development, will be supported in rpm eventually.
+# "???" I have no clue, you're mostly on your own.
+#
+# If you do find yourself inclined to fiddle, here's what I see (shrug):
+# 1) Only the value of mp_size has any serious impact on overall performance,
+# and you will need ~256Kb to handle a typical machine install.
+# 2) Only the Packages hash, because of the size of the values (i.e. headers),
+# will ever need tuning. Diddle the pagesize if you're interested, although
+# I believe that you will find pagesize=512 "best".
+# 3) Adding nofsync increases speed, but risks total data loss. Fiddle shared
+# and/or mp_size instead.
+# 4) btree is faster than hash, but would require some painful rpm release
+# engineering to convert everbody's databases to btree, not gonna happen
+# soon.
#
-%_dbapi 3
-%_dbapi_rebuild 3
-
+# See the db3-devel package, or http://www.sleepycat.com for Berkeley db-3.x
+# documentation.
#
# token works? Berkeley db flag or value
#==================================================
-#---------------------- DBENV->open flags:
+#---------------------- DBENV->open parameters and tunable values:
+# mp_mmapsize=8Mb +++ DBENV->set_mp_mmapsize
+# mp_size=512Kb +++ DBENV->set_cachesize
+#---------------------- DBENV->open and DB->open common bits:
# create DB_CREATE
+# thread ??? DB_THREAD (useless w/o posix mutexes on linux)
+#---------------------- DBENV->open bits:
# joinenv DB_JOIN_ENV
# mpool DB_INIT_MPOOL
-# cdb ~~~ DB_INIT_CDB
+# cdb +++ DB_INIT_CDB
# txn ??? DB_INIT_TXN
# log ??? DB_INIT_LOG
# lock ??? DB_INIT_LOCK
# recover ??? DB_RECOVER
# recover_fatal ??? DB_RECOVER_FATAL
-# private ~~~ DB_PRIVATE
+# use_environ ??? DB_USE_ENVIRON
+# use_environ_root ??? DB_USE_ENVIRON_ROOT
+# private +++ DB_PRIVATE
# lockdown ??? DB_LOCKDOWN
-# shared ~~~ DB_INIT_SYSTEM_MEM
-# thread ??? DB_THREAD (useless w/o posix mutexes on linux)
-#---------------------- DB->open flags:
+# shared +++ DB_SYSTEM_MEM
+#---------------------- DB->open parameters and tunable values:
+# cachesize=512Kb +++ DB->set_cachesize (meaningless if mp_size is used)
+# pagesize=512 +++ DB->set_pagesize
+#---------------------- DB->open bits:
# excl ??? DB_EXCL
# nommap ??? DB_NOMMAP
# rdonly DB_RDONLY
#---------------------- DB->open types:
-# btree ~~~ DB_BTREE
+# btree +++ DB_BTREE
# hash DB_HASH
# recno ??? DB_RECNO
# queue ??? DB_QUEUE
-# unknown ~~~ DB_UNKNOWN
-#
-# See the db3-devel package, or http://www.sleepycat.com for Berkeley db-3.x
-# documentation.
-#
-# Always on in rpm configuration:
-# usecursors (always on) Should DB3 cursors be used in get/put/del ?
-# lockdbfd (always on Packages) Should fcnt;(2) locking be used ?
-#
-# Other tokens:
-# nofsync Should fsync(2) be done after every write?
-# temporaray Remove index when closing rpm database.
-#
-# XXX Use a CDB model database for concurrent access (under development,
-# cursor teardown with signals needs work, and much more.)
+# unknown +++ DB_UNKNOWN
+#---------------------- DB->set_flags bits:
+# bt_dup +++ (btree only) DB_DUP
+# bt_dupsort +++ (btree only) DB_DUPSORT
+# ht_dup +++ (hash only) DB_DUP
+# ht_dupsort +++ (hash only) DB_DUPSORT
+#----------------------- rpmdb specific configuration:
+# usedbenv +++ (on if not "traditional") Use db3 environment?
+# usecursors (always on) Use db3 cursors in get/put/del ?
+# lockdbfd (always on for Packages) Use fcntl(2) locking ?
+# nofsync Disable fsync(2) call performed after every db3 write?
+# temporary Unlink file when closing.
+#
+# XXX Use a CDB database model for concurrent access (under development,
+# cursor teardown with signals needs work, much more besides.)
#%__dbi_other usedbenv create joinenv cdb mpool \
# mp_mmapsize=8Mb mp_size=512Kb usecursors
@@ -325,7 +356,7 @@
#%__dbi_other usedbenv create joinenv mpool txn log \
# mp_mmapsize=8Mb mp_size=512Kb usecursors
-# XXX The "traditional" rpmdb shared/exclusive fcntl(2) lock on Packages:
+# XXX The "traditional" rpmdb shared/exclusive fcntl(2) lock on Packages model:
%__dbi_other usecursors
# Note: adding nofsync here speeds up --rebuilddb a lot.
@@ -333,11 +364,6 @@
%__dbi_transient %{__dbi_rebuild} temporary
%__dbi_perms perms=0644
-# This is a colon (or white space) separated list of tokens for Berkeley
-# dbi configuration. The configuration is conditioned on an internal
-# %{_rpmdb_rebuild} switch to permit rebuilding with a different configuration.
-#
-
#
#--- Hash database configuration
%__dbi_htconfig \
@@ -370,9 +396,6 @@
%{!?_rpmdb_rebuild:%{__dbi_btconfig_current}}\
%{nil}
-# XXX now legacy
-%_dbi_config %{_dbi_htconfig}
-
# The list of tags for which indices will be built.
%_dbi_tags Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Removetid:Depends
@@ -388,6 +411,17 @@
%_dbi_config_Installtid %{_dbi_btconfig}
%_dbi_config_Removetid %{_dbi_btconfig}
+# XXX legacy configuration.
+# Choose db interface:
+# 3 native db3 interface.
+#
+# There are two macros so that --rebuilddb can convert db1 -> db3.
+#
+%_dbapi 3
+%_dbapi_rebuild 3
+
+%_dbi_config %{_dbi_htconfig}
+
#==============================================================================
# ---- transaction macros.
# Macro(s) used to parameterize transactions.