update.tcl

来自「这是linux下运行的mysql软件包,可用于linux 下安装 php + m」· TCL 代码 · 共 94 行

TCL
94
字号
# See the file LICENSE for redistribution information.## Copyright (c) 1999-2002#	Sleepycat Software.  All rights reserved.## $Id: update.tcl,v 11.11 2002/01/11 15:53:58 bostic Exp $source ./include.tclglobal update_dirset update_dir "$test_path/update_test"proc update { } {	source ./include.tcl	global update_dir	foreach version [glob $update_dir/*] {		regexp \[^\/\]*$ $version version		foreach method [glob $update_dir/$version/*] {			regexp \[^\/\]*$ $method method			foreach file [glob $update_dir/$version/$method/*] {				regexp (\[^\/\]*)\.tar\.gz$ $file dummy name				foreach endianness {"le" "be"} {					puts "Update:\					    $version $method $name $endianness"					set ret [catch {_update $update_dir $testdir $version $method $name $endianness 1 1} message]					if { $ret != 0 } {						puts $message					}				}			}		}	}}proc _update { source_dir temp_dir \    version method file endianness do_db_load_test do_update_test } {	source include.tcl	global errorInfo	cleanup $temp_dir NULL	exec sh -c \"gzcat $source_dir/$version/$method/$file.tar.gz | (cd $temp_dir && tar xf -)"	if { $do_db_load_test } {		set ret [catch \		    {exec $util_path/db_load -f "$temp_dir/$file.dump" \		    "$temp_dir/update.db"} message]		error_check_good \		    "Update load: $version $method $file $message" $ret 0		set ret [catch \		    {exec $util_path/db_dump -f "$temp_dir/update.dump" \		    "$temp_dir/update.db"} message]		error_check_good \		    "Update dump: $version $method $file $message" $ret 0		error_check_good "Update diff.1.1: $version $method $file" \		    [filecmp "$temp_dir/$file.dump" "$temp_dir/update.dump"] 0		error_check_good \		    "Update diff.1.2: $version $method $file" $ret ""	}	if { $do_update_test } {		set ret [catch \		    {berkdb open -update "$temp_dir/$file-$endianness.db"} db]		if { $ret == 1 } {			if { ![is_substr $errorInfo "version upgrade"] } {				set fnl [string first "\n" $errorInfo]				set theError \				    [string range $errorInfo 0 [expr $fnl - 1]]				error $theError			}		} else {			error_check_good dbopen [is_valid_db $db] TRUE			error_check_good dbclose [$db close] 0			set ret [catch \			    {exec $util_path/db_dump -f \			    "$temp_dir/update.dump" \			    "$temp_dir/$file-$endianness.db"} message]			error_check_good "Update\			    dump: $version $method $file $message" $ret 0			error_check_good \			    "Update diff.2: $version $method $file" \			    [filecmp "$temp_dir/$file.dump" \			    "$temp_dir/update.dump"] 0			error_check_good \			    "Update diff.2: $version $method $file" $ret ""		}	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?