Login
Timeline
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

139 check-ins using file bindings/s2/require.d/fsl/db/repoOrCheckout.s2 version e684a8619f

2022-01-01
14:12
s2 bindings: updated a test which can fail when running from a branch. Fixed a broken attempt to copy a NULL buffer trigered by that failing test. check-in: bc3c7b1737 user: stephan tags: cx-db-handle-reorg-redux
13:34
fsl_cx db handle reorg redux, step one. Significantly simplifies how dbs are closed, always treating them as an inseparable pair. Basic sanity checks pass, but more testing is needed and lots of docs to update. check-in: fa7c56d0ca user: stephan tags: cx-db-handle-reorg-redux
11:15
Renaming of some internal fsl_xyz... APIs to fsl__xyz... (two underscores). Minor constness tweaks. check-in: 736abef2cc user: stephan tags: trunk
10:53
fsl_db_open() no longer automatically applies the create-if-not-exists flag to in-memory or anonymous temp dbs, as this was at the root of a great deal of confusion the past 24 hours. Documented the propagation behaviour of the CREATE flag from an OPEN'd db to other dbs ATTACHed via that handle. See [https://sqlite.org/forum/forumpost/76963f0026b6b12a], and its top-level post, for more details. check-in: ac15c8d1d4 user: stephan tags: trunk
02:03
Minor cleanups in the fsl_db API. Updated fsl_db SQL tracing to the sqlite3_trace_v2() API. check-in: 89e932ce1a user: stephan tags: trunk
01:13
More cleanups moving towards taking another whack at the fsl_cx db handle reorg. Added a test case to f-sanity.c demonstrating the ATTACH-cannot-create error (whereas the sqlite3 shell can create new files that way). check-in: 51d4b05f5c user: stephan tags: trunk
2021-12-31
22:19
Ported over more general-purposes pieces from the cx-db-handle-reorg branch in prep for taking a fresh whack at that. check-in: 39645644a7 user: stephan tags: trunk
21:54
Cherrypicked [6f2027aeb4], [74964a09a5], and part of [d290f6375c]. check-in: 211eaecfcf user: stephan tags: trunk
21:36
Cherrypicked [74964a09a5] (doxygen tag fix). check-in: 326482e519 user: stephan tags: trunk
21:34
Cherrypicked [6e8b5b6677] (f-test-ciwoco Makefile.in reference fix). <s>(But, interestingly, it didn't show up as a cherrypick merge because i made multiple individual commits and the first one cleared the vmerge state. Hmmm.)</s> Edit: actually, the cherrypick happened, and was correctly recorded, in [f3a4ba9472]. This checkin was completely empty and should not have gone through. Hmm. check-in: 31cc119d75 user: stephan tags: trunk
21:33
Removed old/unused bindings/Makefile.in. check-in: 8632822dd0 user: stephan tags: trunk
21:33
f-merge now defaults to wet-run mode. check-in: f3a4ba9472 user: stephan tags: trunk
21:30
Extended fsl__cx_attach_role() to be able to create a new db if needed (required for fsl_repo_create()) but (regardless of this change) discovered that ATTACH, when run through the new fsl_cx::dbMain handle, can no longer create new db files, which means that f-open cannot create a checkout. COMPLETELY stumped as to why that is. Edit: closing because this branch is failing in inexplicable ways and has a horrid mix of branch-relevant and branch-irrelevant changes. Pulling in the branch-irrelevant ones separately into trunk before taking another whack at the branch-relevant ones. Closed-Leaf check-in: a67b757dc0 user: stephan tags: cx-db-handle-reorg
21:26
Corrected recently-broken Makefile.in references in f-test-ciwoco. check-in: 6e8b5b6677 user: stephan tags: cx-db-handle-reorg
15:57
Reorganized fsl_cx-internal DB handles, eliminating the in-memory/temp main db and (once again) using the first of the repo/checkout which is opened as the main db. Seems to work okay but some fallout would not be terribly surprising. (Edit: moving back to cx-db-handle-reorg because of new, inexplicable inability to create checkout db via ATTACH.) check-in: 46656edc7e user: stephan tags: cx-db-handle-reorg
15:50
Corrected names of several @file doxygen tags. check-in: 74964a09a5 user: stephan tags: cx-db-handle-reorg
15:48
Doc updates. Moved all @deprecated functions into fossil-scm/deprecated.h for later weeding-out. check-in: 6f2027aeb4 user: stephan tags: cx-db-handle-reorg
15:10
Renamed fsl_db_role_label() to fsl_db_role_name(). Doc touchups related to the db handle restructuring. check-in: d290f6375c user: stephan tags: cx-db-handle-reorg
15:08
Removed old/unused bindings/Makefile.in. check-in: 6409509264 user: stephan tags: cx-db-handle-reorg
15:00
fsl_ckout_open_dir() now treats a NULL dir name as ".". Updated C++ and s2 bindings for the new db changes. check-in: 05c1da0fb0 user: stephan tags: cx-db-handle-reorg
13:47
fsl_buffer_external() may now be passed a populated buffer, clearing it before re-initializing it. check-in: 9626c2acf6 user: stephan tags: trunk
13:34
Removed hard-coding of main db journal_mode=WAL for the time being. We might want to set it depending on which db is main (WAL for repo, TRUNCATE or DELETE for checkout?). Or we might want to leave it alone entirely. check-in: 09287e3d13 user: stephan tags: cx-db-handle-reorg
13:29
Eliminated fsl_cx::dbMem in-memory/temp db and (again) use the first of the repo/ckout dbs which is opened as the MAIN db (aliasing it to its well-defined libf schema name). This has a high potential for fallout, so it's in a branch pending more thorough testing. check-in: aebf241ab5 user: stephan tags: cx-db-handle-reorg
2021-12-30
13:52
Removed some debug output added by the previous checkin. check-in: 75eab853b5 user: stephan tags: trunk
13:49
Global config db now uses its own fsl_db handle, no longer ATTACHed with the repo/checkout handle. fsl_ckout_open_dir() now canonicalizes the passed-in directory name (simplifies usage). Added f-query -g/--config flag to query against the global config db. Various code-adjacent tweaks. check-in: 1d7a6d2b96 user: stephan tags: trunk
05:37
Replaced f-apps fcli_setup() calls with fcli_setup_v2(). check-in: 313b59841e user: stephan tags: trunk
05:06
Unified-mode diff builder: reformat runs of delete/insert pairs from a series of D/I/D/I... lines to DD.../II..., like fossil does. check-in: 8752aca1b7 user: stephan tags: trunk
2021-12-29
23:08
Added missing commas in JSON diff builder Edit record output. check-in: 257ae0b684 user: stephan tags: trunk
22:58
Add backspace and form-feed to the characters escaped in the previous commit. check-in: ae8e038bdb user: stephan tags: trunk
22:49
appendf json formatting: emit tabs as \t instead of \u0009. check-in: 50ebe24a14 user: stephan tags: trunk
03:08
f-viff --save-format now also saves/restores the --line-numbers flag, if set. check-in: fbbbdfe556 user: stephan tags: trunk
2021-12-28
20:32
ncurses unified diff: line number columns now size dynamically to fit their digits. check-in: 4883bff8f7 user: stephan tags: trunk
14:48
Partial workaroud for the adjacent-code-block cosmetic issue in the unified text diff builder, eliminating an extraneous separator line. It only applies when using line numbers (so not technically unified diff), but the problem is less glaring now. check-in: 08fdbacefa user: stephan tags: trunk
2021-12-27
22:34
Added line number support to the ncurses unified-ish diff view. check-in: 962200c936 user: stephan tags: trunk
21:07
Corrected a rare corner case error check in the previous checkin. check-in: 5cccd60c7f user: stephan tags: trunk
15:00
When performing a fsl_db rollback, clear the associated fsl_cx's manifest- and blob-content caches in order to ensure that they do not contain any RIDs which are part of the being-rolled-back transaction. Remove fsl_cx::cache::deltaIds as it was determined that the recursion involving that cache could have broken things (but, rather curiously, had not done so thus far). Might want to revisit that cache someday and account for the new effective tail of the array on each recursion. check-in: 35dca27909 user: stephan tags: trunk
2021-12-26
13:45
Constness tweaks. check-in: 006fbfb455 user: stephan tags: trunk
2021-12-25
21:20
This time tapped save before checking in. check-in: 1c6b8edc69 user: stephan tags: trunk
21:19
Removed a resolved TODO comment. Added another comment about diffing of immediately-adjacent diff blocks. check-in: 6c943dc141 user: stephan tags: trunk
16:07
Help text typo and removed unnecessary header. check-in: 43601bc8ab user: stephan tags: trunk
2021-12-24
12:47
Refactoring and layout/navigation improvements in the unified-ish ncurses diff view. check-in: e76a139a12 user: stephan tags: trunk
2021-12-23
14:00
Fixed a bit of a braindead bug in the %s appendf specifier which caused exponential strlen counting on the fsl_diff_v2() internals. This went unnoticed until Mark fed it a huge diff and the diff time went from a small fraction of a second to a minute or more. check-in: c6b3279322 user: stephan tags: trunk
07:46
Added a missing result code check in fsl_cidiff(). Added --save-format flag to f-vdiff to tell it to persist the current diff format as its future default. check-in: d80e895807 user: stephan tags: trunk
07:14
Cleaned up non-undefined macros which broke the amalgamation build. check-in: 6ecdbab284 user: stephan tags: trunk
07:01
Added fsl_cidiff() API and f-test-cidiff test app. check-in: 1c6aeaf5ce user: stephan tags: trunk
03:57
Renamed fsl_diff_builder to fsl_dibu. Sounds nicer and the older name is annoyingly long when used as a namespace/prefix. check-in: e9ec078844 user: stephan tags: trunk
03:53
Diff format typo fix. check-in: 9fb6fae4f8 user: stephan tags: trunk
2021-12-22
13:41
Integrated the ncurses unified-ish build into f-vdiff. check-in: 644d551cb4 user: stephan tags: trunk
12:46
split the ncurses diff builder into its own source and header for eventual integration into f-vdiff and f-adiff. check-in: 84239c8219 user: stephan tags: trunk
10:14
Added optional fsl_diff_builder::finally() method and apply it in the ncurses diff builder to add an end-of-diffs marker at the bottom of the final file. check-in: 5ec5077ca0 user: stephan tags: trunk
09:32
Corrected max pad width calculation caused by swapped args. check-in: 2c2ab0cdb3 user: stephan tags: trunk
09:19
More tinkering with the ncurses diff builder. check-in: e67957a38f user: stephan tags: trunk
08:18
Squelched unused var warning. check-in: da7d9c722e user: stephan tags: trunk
08:15
Minor cleanups in the ncurses diff builder. Fixed an off-by-one width calculation. check-in: 4c34723bb7 user: stephan tags: trunk
07:50
ncurses diff builder ported to unified diff format and added horizontal scrolling. check-in: 6aad850343 user: stephan tags: trunk
05:59
ncurses diff: fixed displaced attributes on the top status line. check-in: 8e94a46455 user: stephan tags: trunk
05:53
ncurses diff builder: got basic vertical scrolling working. check-in: 95dbf8ebf9 user: stephan tags: trunk
04:51
Fixed some non-curses output when in curses mode. Added a please wait message at startup because it's awful slow on a pi zero. check-in: b4ff15d5bc user: stephan tags: trunk
04:30
Initial prototype/proof-of-concept for a diff builder which renders to an ncurses PAD. A stepping stone towards adding scrollable diffs to fnc. check-in: 7ee366de74 user: stephan tags: trunk
2021-12-21
22:10
fsl_ckout_manage() now silently skips any directories which appear to be nested checkouts. Extended fsl_dircrawl_f() callback semantics to support skipping recursion into a dir but continuing to dir-crawl. check-in: 3f48c073cf user: stephan tags: trunk
20:38
Corrected f-apps broken by previous checkin. check-in: 5427afd00d user: stephan tags: trunk
20:21
Removed the fossil- name prefix from include/fossil-scm/*.h. check-in: 43a9bea8d5 user: stephan tags: trunk
19:48
Build tweaks for the include/... bits. check-in: de1b5498cb user: stephan tags: trunk
19:43
Minor doc touchups. check-in: 344f51c014 user: stephan tags: trunk
15:18
Resolved a couple of semantics collisions between fsl_diff_flag_e and fsl_diff2_flag_e entries. check-in: 956162a6b1 user: stephan tags: trunk
14:54
Added fsl_ckout_dbnames() and fsl_is_top_of_ckout(), prompted by recent fossil forum traffic. check-in: 7a9a409695 user: stephan tags: trunk
14:17
The deps fix which [7fa0dff2747229ff] was supposed to be but, it turns out, wasn't. check-in: 7f9b8b4993 user: stephan tags: trunk
13:10
Expanded the fsl_ckout_manage() callback interface analog to the new fsl_ckout_unmanage() changes. check-in: c00159a925 user: stephan tags: trunk
12:44
f-rm now tries to non-fatally report, in verbose mode, if unlinking of a file fails. check-in: 88ebea4673 user: stephan tags: trunk
12:34
Expanded fsl_ckout_unmanage()'s callback interface to facilitate client-side unlinking of newly-unmanaged files. Added f-rm --unlink option. check-in: 9be228a605 user: stephan tags: trunk
12:32
Seem to have resolved a weird deps generation problem which causes build to fail. check-in: 7fa0dff274 user: stephan tags: trunk
12:16
Added missing f-apps/GNUmakefile. check-in: 054cb0a7bf user: stephan tags: trunk
08:28
Moved fossil-scm/fossil.h to ../libfossil.h so that client code can build from both the canonical tree and amalgamation using the same include name. check-in: 76d6359435 user: stephan tags: trunk
07:23
Removed 'undefine' calls from GNUmakefile because undefine doesn't work with gmake 3.81. check-in: 22315ea459 user: stephan tags: trunk
07:20
Removed now-broken reference to Makefile in auto.def. check-in: 1d29764382 user: stephan tags: trunk
06:58
Overhauled the build system to use (for the most part) a single top-level makefile, with each significant subdir in its own sub-makefile. This improves parallel buildability tremendously but doesn't gain much speed on a 4-core intel i3-based system. The doc/ and bindings/s2 dirs still use the older makefiles for the time being. check-in: 5c7c8ba69e user: stephan tags: trunk
06:54
Minor cleanups in the top-level makefile in prep for merge to trunk. Closed-Leaf check-in: 345150d88e user: stephan tags: toplevel-make
06:23
Renamed doc/Makefile to doc/GNUmakefile. check-in: 8abd9a209c user: stephan tags: toplevel-make
06:05
More cleanups in the top-level makefile and shakenmake. check-in: 4c4af00081 user: stephan tags: toplevel-make
05:45
Renamed the various stub Makefiles to GNUmakefile for consistency with the top-level makefile. check-in: d489b0a596 user: stephan tags: toplevel-make
05:32
More improvements in support of building/cleaning only the being-worked-on subdir. check-in: ac82ba5810 user: stephan tags: toplevel-make
04:26
Found a not-too-terrible way of enabling partial builds, provided they're run from the appropriate subdir. Fixed assertions in f-sanity caused by __FILE__ now resolving differently and the Makefiles being reorged. check-in: 2a32d4ba97 user: stephan tags: toplevel-make
00:33
Updated an out-of-date doc link. check-in: 25def58ee0 user: stephan tags: trunk
2021-12-20
23:21
Merged in 32-bit and install fixes from toplevel-make branch. check-in: 7decbe6cf4 user: stephan tags: trunk
23:17
Fixed install set decls to append to their list of files instead of overwrite. check-in: 3a8e26a80b user: stephan tags: toplevel-make
23:16
Fixed shakenmake handling of installation source names when they contain dir prefix parts. check-in: 6a4dd32662 user: stephan tags: toplevel-make
23:16
Fixed an int type error which only shows up on 32-bit builds. check-in: adb7e4dae8 user: stephan tags: toplevel-make
22:45
Ported in upstream diff fixes from [fossil:5bb01585bc8677ab15ef]. check-in: 0bee68c7c7 user: stephan tags: trunk
22:35
Added missing make-binding-cpp.make.in. check-in: 4a23bb3fe5 user: stephan tags: toplevel-make
22:33
Added a basic mechanism for limiting build to one make-XXX.make file. check-in: d124739301 user: stephan tags: toplevel-make
22:24
More work on the mega-build. Skipping the s2 bindings for the time being because that one is significantly more involved and may well be better served by a recursive make because of how its test suite works. check-in: d0cd398612 user: stephan tags: toplevel-make
22:07
Cherrypick [3987b62a030d] using f-merge. check-in: c2a2e453da user: stephan tags: trunk
22:06
Touchups to f-ci's handling of sym- tags to bring it mostly in line with fossil's checkin-level sym tag handling. check-in: 3987b62a03 user: stephan tags: toplevel-make
21:20
Migrated bindings/cpp to the mega-make build. check-in: 3277761427 user: stephan tags: toplevel-make
14:32
Migrated fnc to the top-level build process, which required going down a gcc deps-generation rabbit hole. check-in: ba9f18c3de user: stephan tags: toplevel-make
11:34
More work on the mega-make. Added a way for each sub-makefile to define its own set of cleanup files. check-in: 0839826b95 user: stephan tags: toplevel-make
11:07
Ported f-apps build into toplevel makefile. check-in: bfdddcd306 user: stephan tags: toplevel-make
10:05
Ooops: renamed GNUmakefile GNUmakefile.in. check-in: 229b2aa8e2 user: stephan tags: toplevel-make
09:41
Initial work on experimentally moving the subdir makes into a single top-level mega-makefile. check-in: 1542e54763 user: stephan tags: toplevel-make
09:24
Build file typo. check-in: e33e6441c8 user: stephan tags: trunk
2021-12-17
18:35
Minor constness tweaks. Added a note about how fsl_repo_rebuild() handles corruption such as that reported at [https://fossil-scm.org/forum/forumpost/f4cc31863179f843]. Removed a completed TODO comment. check-in: 9886240dfc user: stephan tags: trunk
2021-12-16
16:05
Added a missing error check to f-ciwoco and removed a completed TODO reminder. check-in: 00170db3c2 user: stephan tags: trunk
2021-12-15
14:24
Minor doc and formatting tweaks. check-in: 8d1f232a1c user: stephan tags: trunk
14:22
Added missing fsl_looks_like_binary() impl and fixed a doc bug for that function. check-in: d76673a1a1 user: stephan tags: trunk
13:49
Bump _XOPEN_SOURCE from 500 to 700 for macOS builds. unistd.h functions readlink() and symlink() require _POSIX_C_SOURCE >= 200112L, which _XOPEN_SOURCE 700 provides. No noticeable impact on OpenBSD or Linux. check-in: 7c8cbd723a user: mark tags: trunk
12:47
Moved fsl_ckout_merge() code from f-test-merge.c to src/merge.c. Renamed f-test-merge.c to f-merge.c. Various touchups in f-merge. check-in: 661999bcc7 user: stephan tags: trunk
06:38
Internal tinkering with the debug diff builder for the sake of investigating what we'd need to do a rendered-to-ncurses diff builder. check-in: 0a5c3514c8 user: stephan tags: trunk
04:57
Moved a couple fsl_diff_builder internal APIs into the public interface in prep for potential use with an ncurses-based builder for use with fnc. check-in: c11e50d137 user: stephan tags: trunk
04:21
More work on merge and adjacent code. Changed how fsl__ckout_clear_merge_state() works to attempt to enable partial reset when individual to-be-merged files are reverted. Whether the corresponding SQL is 100% semantically correct for the vmerge state remains to be seen, but so far, so good. See [https://fossil-scm.org/forum/forumpost/f678085f79] for the discussion about those bits. check-in: 4d88f6cbd6 user: stephan tags: trunk
00:42
More work on the merge API. Time for work. check-in: 8fa60bfe38 user: stephan tags: trunk
2021-12-14
23:08
First-ever fsl_ckout_merge() test worked, but there's still lots of testing and client status callback support to add to fsl_ckout_merge(). Added vmerge state to f-status/fcli_chkout_show_info() output. check-in: 9e719cffc5 user: stephan tags: trunk
22:43
Latest upstream fnc to account for signature change of fsl_cx_is_case_sensitive(). check-in: fc61a0e2bd user: stephan tags: trunk
15:52
More work on the merge port and adjacent code. check-in: b9c2a05cfe user: stephan tags: trunk
11:19
Added fsl_file_copy(), fsl_symlink_read(), and fsl_file_isexec() as part of the merge op effort. Expanded fsl_file_tempname() to be able to accept a NULL list of directories in order to return just the name without a directory prefix. check-in: 6dca54dfde user: stephan tags: trunk
09:16
Minor allocation optimization and tweak to how the filename prefix is applied in fsl_file_tempname(). check-in: b89b9e0058 user: stephan tags: trunk
08:55
Ported in a variant of the temp-filename generation bits from fossil because it's needed for the next merge steps. check-in: dd3acff665 user: stephan tags: trunk
05:23
More work on the merge API port. Still lots to do. check-in: 7d626b574d user: stephan tags: trunk
04:17
Tweaks to the return semantics of fsl_db_exec() and fsl_stmt_step(). Doesn't/shouldn't affect any existing code. Added a test to ensure that fsl_stmt_step() behaves as expected in the face of a RETURNING clause. check-in: ad7ef26207 user: stephan tags: trunk
2021-12-13
06:15
Minor code modernization in the still-far-from-complete merge code. check-in: d77e495227 user: stephan tags: trunk
03:52
Merge in port-merge branch for further merge development - keeping this in a separate branch is unnecessary and is getting annoying. There's still plenty of work to do on the merge port. check-in: 63fe74d7f3 user: stephan tags: trunk
2021-12-11
07:34
Minor internal cleanups in f-repostat.c check-in: 5a99011c5b user: stephan tags: trunk
2021-12-10
12:11
As a special case, fsl_file_simplify_name() now always resolves to '/' if its input resolves to that, regardless of whether or not it is told to retain a trailing slash. The alternative would be to resolve to an empty string if it were told to strip the trailing slash for that case. check-in: 3ad71dbc66 user: stephan tags: trunk
11:35
Fixed bug which caused fsl_file_simplify_name() to not honor its trailing backslash policy. check-in: 14fffb4e82 user: stephan tags: trunk
07:01
Typo fix. check-in: 2b2b8c3ac9 user: stephan tags: trunk
06:49
Wrapped f-repostat work in a transaction to avoid a minuscule corner case where another app changes the stats as they're being read. Made use of the percent-z fsl_appendf() specifier to remove a few explicit fsl_free() calls. check-in: 48d30b38a6 user: stephan tags: trunk
04:32
Added missing status and quick-check to f-repostat. Missing only full integrity check (requires porting (fossil test-integrity)). check-in: a6ba4b4444 user: stephan tags: trunk
04:08
Initial version of f-repostat, analog to (fossil dbstat). Some adjecent constness cleanups. check-in: 4926ae9b31 user: stephan tags: trunk
2021-12-08
08:17
Minor doc updates. Changed the main db journal mode to TRUNCATE because OFF apparently leads to undefined behaviour when ROLLBACK is used (something we do often, e.g. to implement dry-run mode). check-in: a1b9594aec user: stephan tags: trunk
07:04
Cherrypicked inadvertent checkin to the wrong branch via /fileedit. check-in: 6dddf8537b user: stephan tags: trunk
07:02
Minor doc touchups Closed-Leaf check-in: e9c9fccc7f user: stephan tags: port-merge
06:55
Merged in trunk. Kinda funny that f-ci can check in a merge but we don't yet have f-merge to actually create a merge. check-in: 49e14934d8 user: stephan tags: port-merge
2021-12-06
03:42
Ported in line numbers in merge conflict markers from [fossil:14f44e933c0c0c2c | fossil checkin 14f44e933c0c0c2c]. check-in: 3e58eea1f3 user: stephan tags: trunk
02:33
Minor help text and API doc cleanups. One minor allocation optimization in fsl_repo_rebuild(). check-in: 17a7f5cf12 user: stephan tags: trunk
2021-12-04
07:39
Internal restructuring of crosslink callback handling, such that registered listeners are called at a later phase for ticket artifacts. This should allow client-side listeners to overwrite timeline entries for tickets without too much hassle (that wasn't possible at all before this change). check-in: 8349911eb6 user: stephan tags: trunk
06:36
(Finally) implemented ticket crosslinking. check-in: d8e8c16cc4 user: stephan tags: trunk
2021-12-03
09:33
s2 binding: extended Fossil.Db.each() to take a target array as a form of callback, appending each row to the target. check-in: 1c591b1ffc user: stephan tags: trunk
09:03
More tinkering with the s2 binding, getting older scripts working again. check-in: 5ea356ab81 user: stephan tags: trunk
08:36
Minor internal cleanups and costness tweaks. check-in: 8541d31570 user: stephan tags: trunk
07:39
Tinkering with the s2 binding to get tests working after removal of the various db handles. check-in: 93a66791fe user: stephan tags: trunk