annotate convert_urllog_db.tcl @ 11:06f5e5b25930

Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
author Matti Hamalainen <ccr@tnsp.org>
date Mon, 05 Sep 2011 16:16:03 +0300
parents fbf718c24de4
children 7feaff7cc22e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
1 #!/usr/bin/tclsh
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
2 package require sqlite3
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
3
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
4 set urllog_orig_file "data.urllog"
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
5 set urllog_db_file "urllog.sqlite"
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
6
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
7
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
8 proc escape { str } {
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
9 return [string map {' ''} $str]
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
10 }
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
11
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
12 proc lescape { lst pos } {
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
13 return [escape [lindex $lst $pos]]
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
14 }
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
15
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
16
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
17 if {[catch {set fd [open $urllog_orig_file r]} uerrmsg]} {
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
18 puts "Could not open '$urllog_orig_file' for reading: $uerrmsg"
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
19 exit 1
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
20 }
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
21
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
22 if {[catch {sqlite3 urldb $urllog_db_file} uerrmsg]} {
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
23 puts "Could not open SQLite3 database '$urllog_db_file': $uerrmsg"
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
24 exit 2
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
25 }
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
26
11
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
27 puts "Dropping current urls table."
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
28 if {[catch {urldb eval {DROP TABLE urls}} uerrmsg]} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
29 puts "Dropping table resulted in error (ignored): $uerrmsg"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
30 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
31
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
32 puts "Creating urls table."
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
33 if {[catch {urldb eval {CREATE TABLE urls(id INTEGER PRIMARY KEY AUTOINCREMENT, utime INT, url VARCHAR(2048), user VARCHAR(32), host VARCHAR(256), chan VARCHAR(32))}} uerrmsg]} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
34 puts "Error creating table! $uerrmsg"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
35 exit 3
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
36 }
10
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
37
11
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
38 puts -nonewline "Detecting database version: "
10
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
39 set nline 0
11
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
40 set minentries 9999
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
41 set maxentries 0
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
42 while {![eof $fd]} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
43 incr nline
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
44 set line [gets $fd]
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
45 if {$line != ""} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
46 set items [split $line " "]
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
47 set tmp [llength $items]
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
48 if {$tmp > $maxentries} { set maxentries $tmp }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
49 if {$tmp < $minentries} { set minentries $tmp }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
50 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
51 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
52
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
53 if {$maxentries != 5 || $maxentries != $minentries} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
54 puts "old / variable"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
55 } else {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
56 puts "new"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
57 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
58
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
59 puts "Database contains $nline records, with $minentries / $maxentries entries."
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
60
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
61 puts -nonewline "Converting database, please wait ... round #1 "
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
62 set nline 0
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
63 seek $fd 0 start
10
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
64 while {![eof $fd]} {
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
65 incr nline
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
66 set line [gets $fd]
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
67 set items [split $line " "]
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
68 if {$line != ""} {
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
69 set host [lindex $items 3]
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
70 if {[regexp {^\((.+)\)$} $host ures uhost]} {
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
71 set host $uhost
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
72 }
11
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
73 set uid [lindex $items 4]
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
74 if {$uid != ""} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
75 set sql "INSERT INTO urls (id,utime,url,user,host) VALUES ($uid, [lindex $items 1], '[lescape $items 0]', '[lescape $items 2]', '[escape $host]')"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
76 if {[catch {urldb eval $sql} uerrmsg]} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
77 puts "\nError ($nline): $uerrmsg on:\n$sql"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
78 exit 15
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
79 }
10
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
80 }
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
81 }
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
82 if {[expr $nline % 10] == 1} {
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
83 puts -nonewline "."
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
84 flush stdout
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
85 }
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
86 }
11
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
87 puts "OK"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
88
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
89 puts -nonewline "\nRound #2 "
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
90 set nline 0
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
91 seek $fd 0 start
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
92 while {![eof $fd]} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
93 incr nline
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
94 set line [gets $fd]
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
95 set items [split $line " "]
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
96 if {$line != ""} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
97 set host [lindex $items 3]
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
98 if {[regexp {^\((.+)\)$} $host ures uhost]} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
99 set host $uhost
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
100 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
101 set uid [lindex $items 4]
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
102 if {$uid == ""} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
103 set sql "INSERT INTO urls (utime,url,user,host) VALUES ([lindex $items 1], '[lescape $items 0]', '[lescape $items 2]', '[escape $host]')"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
104 if {[catch {urldb eval $sql} uerrmsg]} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
105 puts "\nError ($nline): $uerrmsg on:\n$sql"
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
106 exit 15
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
107 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
108 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
109 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
110 if {[expr $nline % 10] == 1} {
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
111 puts -nonewline "."
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
112 flush stdout
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
113 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
114 }
06f5e5b25930 Make the database conversion 2-staged to support old format flatfile database inputs. Add detection for old format.
Matti Hamalainen <ccr@tnsp.org>
parents: 10
diff changeset
115
10
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
116 urldb close
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
117 close $fd
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
118
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
119 puts "OK"
fbf718c24de4 Add script for converting URLLog text database to SQLite.
Matti Hamalainen <ccr@tnsp.org>
parents:
diff changeset
120 puts "New SQLite3 database is in file '$urllog_db_file'"