⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 no.089.stable.out

📁 一个内存数据库的源代码这是服务器端还有客户端
💻 OUT
字号:
stdout of test 'no.089` in directory 'tests/BugReports` itself:#> Mtest:	other no.089#> Mtest:	Mtimeout -timeout 630 ./no.089 no.089#> Mlog:	Mtimeout -timeout 210 Mserver -modulesilent -yaccsilent -d8 -db tests_BugReports no.089.1.mil# Monet Database Server V4.1# Copyright (c) 1993-1999, CWI & SION. All rights reserved.# compiled for IRIX646.5/32bit on Fri Jan 14 01:04:33 MET 2000.#script:no.089.1.mil# Monet Database Server V4.3.5# Copyright (c) 1993-2002, CWI. All rights reserved.# compiled for i686-pc-linux-gnu/32bit; dynamically linked.# >Number:         89# >Category:       Mserver# >Synopsis:       abort doesn't work right when BATs are unloaded# >Confidential:   no# >Severity:       serious# >Priority:       high# >Responsible:    boncz# >State:          open# >Class:          sw-bug# >Submitter-Id:   unknown# >Arrival-Date:   Mon Dec  1 14:49:04 1997# >Originator:     windhouw# >Organization:# UvA# >Release:        971007# >Environment:# # >Description:# The following problem occurs:# - I'm running a "transaction";# - I abort the transaction;# - the updates and inserts seems to be reversed;# - I quit Mserver and restart it;# - the updates and inserts are back again.# # It seems to be that BATs that are swapped out of# memory, don't take part in the abort.# # I replayed this scene by explicitly swapping the BAT# to disk:# #You are system administrator (adm)!# >module(url);# >Server := new(oid,url);# >Server.persists(true);# >Server.rename("Server");# >Server.insert(oid(1),url("http://www.cwi.nl/")); # >Server.print;# #---------------------------------## # oid   | Server                  ## #---------------------------------## [ 1@0,    http://www.cwi.nl/      ]# >Server.unload;# >abort;# >Server.print;# #-----------------## # oid   | Server  ## #-----------------## ... QUIT & RESTART ...# #You are system administrator (adm)!# >module(url);# >Server.print;# #---------------------------------## # oid   | Server                  ## #---------------------------------## [ 1@0,    http://www.cwi.nl/      ]# # As this problem frequently occurs while testing my# application, my database gets inconsistent which# leads to runtime errors in the odmg packages (like# oid not found in the extent), while abort should# give me the possibilty to get back to the previous# consistent state of the database.module(url);var Server:= new(oid,url).persists(true).rename("Server");var Server2:= new(oid,url).persists(true).rename("Server2");var Clients:= new(oid,int).persists(true).rename("Clients");var Clients2:= new(oid,int).persists(true).rename("Clients2");commit();Server.insert(oid(1),url("http://www.cwi.nl/")); Server2.insert(oid(1),url("http://www.cwi.nl/")); Clients.insert(oid(1),3); Clients2.insert(oid(1),3); Server.print();#---------------------------------## BAT:	  Server		  ## (oid)	  (url)			  ##---------------------------------#[ 1@0,	  "http://www.cwi.nl/"	  ]Server2.print();#---------------------------------## BAT:	  Server2		  ## (oid)	  (url)			  ##---------------------------------#[ 1@0,	  "http://www.cwi.nl/"	  ]Clients.print();#-------------------------## BAT:	  Clients	  ## (oid)	  (int)		  ##-------------------------#[ 1@0,	  3		  ]Clients2.print();#-------------------------## BAT:	  Clients2	  ## (oid)	  (int)		  ##-------------------------#[ 1@0,	  3		  ]dir("Server");#---------------------------------------------------------------------------------------------------------## name		| htype	| ttype	| count	| heat	| dirty		| status| kind	| refcnt| lrefcnt	  ##---------------------------------------------------------------------------------------------------------#[ "Server",	  "oid",  "url",  1,	  0,	  "dirty",	  "load", "pers", 0,	  2		  ][ "Server2",	  "oid",  "url",  1,	  0,	  "dirty",	  "load", "pers", 0,	  2		  ]dir("Clients");#---------------------------------------------------------------------------------------------------------## name		| htype	| ttype	| count	| heat	| dirty		| status| kind	| refcnt| lrefcnt	  ##---------------------------------------------------------------------------------------------------------#[ "Clients",	  "oid",  "int",  1,	  0,	  "dirty",	  "load", "pers", 0,	  2		  ][ "Clients2",	  "oid",  "int",  1,	  0,	  "dirty",	  "load", "pers", 0,	  2		  ]unload("Server");unload("Clients");dir("Server");#---------------------------------------------------------------------------------------------------------## name		| htype	| ttype	| count	| heat	| dirty		| status| kind	| refcnt| lrefcnt	  ##---------------------------------------------------------------------------------------------------------#[ "Server",	  "oid",  "url",  1,	  0,	  "diffs",	  "disk", "pers", 0,	  2		  ][ "Server2",	  "oid",  "url",  1,	  0,	  "dirty",	  "load", "pers", 0,	  2		  ]dir("Clients");#---------------------------------------------------------------------------------------------------------## name		| htype	| ttype	| count	| heat	| dirty		| status| kind	| refcnt| lrefcnt	  ##---------------------------------------------------------------------------------------------------------#[ "Clients",	  "oid",  "int",  1,	  0,	  "diffs",	  "disk", "pers", 0,	  2		  ][ "Clients2",	  "oid",  "int",  1,	  0,	  "dirty",	  "load", "pers", 0,	  2		  ]abort();dir("Server");#---------------------------------------------------------------------------------------------------------## name		| htype	| ttype	| count	| heat	| dirty		| status| kind	| refcnt| lrefcnt	  ##---------------------------------------------------------------------------------------------------------#[ "Server",	  "oid",  "url",  0,	  0,	  "dirty",	  "load", "pers", 0,	  2		  ][ "Server2",	  "oid",  "url",  0,	  0,	  "clean",	  "load", "pers", 0,	  2		  ]dir("Clients");#---------------------------------------------------------------------------------------------------------## name		| htype	| ttype	| count	| heat	| dirty		| status| kind	| refcnt| lrefcnt	  ##---------------------------------------------------------------------------------------------------------#[ "Clients",	  "oid",  "int",  0,	  0,	  "dirty",	  "load", "pers", 0,	  2		  ][ "Clients2",	  "oid",  "int",  0,	  0,	  "clean",	  "load", "pers", 0,	  2		  ]Server.print();#-----------------## h	Server	  # name# oid	url	  # type#-----------------#Server2.print();#-------------------------## BAT:	  Server2	  ## (oid)	  (url)		  ##-------------------------#Clients.print();#-------------------------## BAT:	  Clients	  ## (oid)	  (int)		  ##-------------------------#Clients2.print();#-------------------------## BAT:	  Clients2	  ## (oid)	  (int)		  ##-------------------------#quit();# Monet Database Server V4.3.5# Copyright (c) 1993-2002, CWI. All rights reserved.# compiled for i686-pc-linux-gnu/32bit; dynamically linked.module(url);bat("Server").print();#-----------------## BAT:	  Server  ## (oid)	  (url)	  ##-----------------#bat("Server2").print();#-------------------------## BAT:	  Server2	  ## (oid)	  (url)		  ##-------------------------#bat("Clients").print();#-------------------------## BAT:	  Clients	  ## (oid)	  (int)		  ##-------------------------#bat("Clients2").print();#-------------------------## BAT:	  Clients2	  ## (oid)	  (int)		  ##-------------------------#quit();# 17:06:53 >  # 17:06:53 >  Done.# 17:06:53 >  

⌨️ 快捷键说明

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