CN101158915B - 作为修改记录操作的部分的核实记录的方法和系统 - Google Patents
作为修改记录操作的部分的核实记录的方法和系统 Download PDFInfo
- Publication number
- CN101158915B CN101158915B CN2007101535795A CN200710153579A CN101158915B CN 101158915 B CN101158915 B CN 101158915B CN 2007101535795 A CN2007101535795 A CN 2007101535795A CN 200710153579 A CN200710153579 A CN 200710153579A CN 101158915 B CN101158915 B CN 101158915B
- Authority
- CN
- China
- Prior art keywords
- record
- assembly
- value
- search request
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
Abstract
提供了作为修改数据操作的部分的核实记录的方法、系统和产品。接收查找请求以确定记录与值是否匹配。第一组件执行查找请求以确定记录与值是否匹配。第一组件将核实请求发送至没有执行该查找请求的第二组件以执行查找请求来确定记录与值是否匹配。将该第一组件和第二组件执行查找请求的结果写入日志。
Description
技术领域
本发明涉及作为修改记录操作的部分的核实记录的方法、系统和产品。
背景技术
在某些计算环境中,多个主机系统可以与多个控制单元(CU)(也称为存储控制器、存储子系统、企业存储服务器等)进行通信,其中该多个控制单元提供通过一个或者多个逻辑通路对存储设备(诸如互联的硬盘驱动器)的访问。该互联驱动器可以被配置为直接访问存储设备(DASD)、独立磁盘冗余阵列(RAID)、简单磁盘捆绑(JBOD)等。控制单元可以配置一个或者多个逻辑子系统(LSS),其中每个LSS被配置用于包括多个卷。
在某些情况下,主机系统可能想要修改由控制单元管理的记录,针对该记录必须获取锁定。作为修改记录的部分,主机可以通过主机内的通道子系统程序来发布查找命令,以在修改操作开始时使得控制单元比较要修改的记录和该记录的值,用以确定该值是否已经改变,尽管该记录被锁定。如果查找响应指示该记录值没有被改变,则通道子系统程序可以前进到将下一个通道命令字发送到控制单元,以执行对锁定的记录或者其他数据对象的修改。如果记录值已经改变,即该记录与查找值不匹配,则这个失败可能指示在控制单元或者主机内的硬件和/或软件问题。在这种情况下,通道子系统程序将前进到差错处理模式并不再进行记录修改。
在本领域中需要用于处理原子操作的改进技术。
发明内容
提供了一种用于作为修改记录操作的部分的核实记录的方法、系统和产品。接收查找请求以确定记录与值是否匹配。第一组件执行该查找请求以确定记录与值是否匹配。第一组件将核实请求发送至没有执行该查找请求的第二组件以执行该查找请求,用以确定记录与值是否匹配。响应于第二组件确定记录与值匹配,指示第一组件处于差错模式,其中在差错模式中第一组件与操作隔离。到第二组件的核实请求包括用于记录的地址和值的差错检查码。第二组件进一步使用差错检查码来执行差错检查操作,以验证由第一组件使用的记录地址和值有效。响应于第二组件确定差错检查码验证记录地址和值不是有效的,指示第一组件处于差错模式。将该第一组件和第二组件执行查找请求的结果写入日志。
在进一步的实施方式中,如果记录与值不匹配,则确定是否设置了与查找请求相关联的标志,其中仅响应于确定设置了标志而将该核实请求发送至第二组件。
在进一步的实施方式中,设置的标志指示查找请求是更新与记录相关联的数据的原子操作的部分。
在进一步的实施方式中,响应于确定没有设置指示将核实请求发送至第二组件的标志,将第一组件执行查找请求的结果写入日志。
在进一步的实施方式中,查找到的记录是记录集的成员,该记录集包括:耦合的数据集记录,其中执行查找以确定主机是否仍然是被管理的主机组的成员;以及内容卷表记录,其中执行查找以确定在修改记录操作期间记录的值是否没有被改变。
在进一步的实施方式中,第一组件包括网络适配器,并且其中第二组件包括处理器联合体。
还提供了一种发起对由系统管理的存储装置中的记录进行修改的操作的方法、系统和产品。向系统发送命令设置锁定,以防止在操作期间其他处理修改记录。从存储装置中读取记录以确定用于记录的值。生成对系统的查找请求以确定要修改的记录是否具有确定的值,其中系统使用第一组件执行查找请求。响应于系统确定记录与值不匹配,设置标志以使得系统执行第二检查操作,从而使用在第一组件执行请求时没有涉及的第二组件再次执行查找请求。将查找请求传输至系统接收来自该查找请求的指示该记录与该值是否匹配的结果。响应于指示记录与值匹配的结果,继续进行修改该记录的操作。响应于指示记录与值不匹配的结果,终止修改该记录的操作。
在进一步的实施方式中,在用于查找请求的命令中传输标志。
在进一步的实施方式中,结果指示第一组件的差错是否引起记录与值不匹配。响应于指示差错不是由第一组件的差错导致的结果,对发起操作以及生成查找请求的组件执行差错检查。
附图说明
图1示出了计算环境的实施方式。
图2示出了将记录值与查找值进行比较的查找命令的实施方式。
图3示出了修改记录操作的实施方式。
图4示出了处理查找命令操作的实施方式。
图5示出了处理查找命令的结果的操作的实施方式。
图6示出了计算环境的可替换实施方式。
具体实施方式
图1示出了其中可实现实施方式的计算环境。一个或者多个主机2(仅示出了一个)与服务器4进行通信,该服务器4管理对具有记录8的存储装置6的访问。主机2包括操作系统10以生成I/O请求,从而将该请求传输至服务器4以访问存储装置6中的记录8。服务器4包括输入/输出(I/O)管理器12以管理至存储装置6的I/O请求。服务器4可以将来自存储装置6的记录8和数据在存储器14中高速缓存。服务器4还包括多个组件,诸如示出的第一组件16和第二组件18。第一组件16和第二组件18可以包括能够执行针对存储装置6的I/O相关请求的硬件和/或软件组件,诸如网络适配器、处理联合体、控制器、桥接器和计算机程序等。
图2示出了查找命令50的实施方式,主机2可以在执行修改之前将该查找命令50作为修改记录8的操作的部分传输至服务器4,以确认记录8的值在修改操作期间没有改变。修改可以包括更新或者删除目标记录8。查找命令50包括:规定查找请求的查找命令码52;原子标志54,向服务器4指示查找请求是原子操作(诸如更新或者检查记录8的操作)的部分和确定记录8是否改变;记录地址56,其标识记录8要修改;指示对于所标识的记录8的要被确认的值的查找值58;以及针对记录地址56和查找值58的差错检查码60,诸如循环冗余校验(CRC)码。在一个实施方式中,差错检查码60可以包括差错检查码以及其中封装有查找请求50的传输包。例如,差错检查码60可以由传输查找请求的网络协议驱动器生成,用于验证传输内容有效。在图2的实施方式中,查找命令50包含原子标志54。在一个可替换实施方式中,原子标志54可以与查找命令50独立地传送到服务器4。
图3示出了由主机操作系统10或者在存储装置6中执行修改记录8操作的某些其他程序所执行操作的实施方式。一旦发起(在块100处)修改记录8的操作,操作系统10向服务器4发送(在块102处)命令设置锁定以防止在操作期间其他处理修改该记录。操作系统10从存储装置读取(在块104处)记录8以确定用于记录8的值。记录8可以从服务器存储器14返回。操作系统10生成(在块106处)查找请求50以确定要修改的记录8是否具有确定的值,即,尽管锁定,但仍确定该记录值在发起操作之后是否已经改变。如果记录已改变,则这种情况指示在服务器4或者主机2中可能存在硬件或者软件问题。如果服务器4确定记录8与该值不匹配,则设置(在块108处)标志54以使服务器4执行第二检查操作,用以使用由第一组件16执行的查找请求中没有涉及的第二组件18来再次执行查找请求。这允许服务器4检查确定该记录与该值的不匹配是否是执行最初查找命令50的第一组件16的差错所导致的结果。操作系统10将查找命令50传输(在块110处)至服务器4执行。
图4示出了第一组件16和第二组件18处理来自主机2的查找命令50的操作的一个实施方式。一旦接收(在块150处)查找请求50以确定记录56与值58是否匹配,第一组件16(例如,适配器或者其他硬件和/或软件组件)执行(在块152处)查找请求以确定在记录地址56处的记录与查找值58是否相匹配。如果该记录与值58匹配(在块154处),则第一组件16向主机2返回(在块156处)该匹配的查找的状态。如果该记录与该值不匹配(在块154处),则第一组件16确定(在块158处)与查找请求50相关联的原子标志54是否被设置以指示该查找请求是原子操作的部分,诸如对刚检查完的记录8的修改操作。如果没有设置指示原子操作的原子标志54,则第一组件16返回(在块160处)指示该记录与值58不匹配的消息。
如果设置了原子标志54(在块158处),则第一组件16发送(在块162处)核实请求至没有执行(或者没有在处理中涉及)查找请求的第二组件18(例如,处理器联合体或者其他硬件和/或软件),以再次执行查找请求来确认该记录与该值是否匹配。从第一组件16到第二组件18的核实请求可以提供第一组件16在其查找中使用的记录地址56和查找值58。第二组件18使用(在块164处)与发送至第一组件16的查找请求50一起提供的差错检查码60,以验证第一组件16使用的记录地址和值有效。如所讨论,差错检查码60可以包括差错检查码,该差错检查码由网络传输协议驱动器计算并且被包含在封装有从主机2传输到服务器4的查找命令的传输包中。如果验证由第一组件16使用的记录地址和值(在块166处)有效,则第一组件16使用了正确信息,并且第二组件18确定(在块168处)在所提供记录地址处的记录与所提供的值是否相匹配。如果不存在匹配(在块168处),则第一组件16适当计算出不匹配,并且第二组件18把对于硬件的差错检查信息和查找结果记入日志,并返回(在块170处)指示记录不匹配以及指示服务器硬件适当操作的消息。
如果存在匹配(在块168处),即,第二组件18得到与第一组件16不同的结果,则第二组件18将差错检查信息和查找结果写入日志,并返回(在块172处)指示该记录与该查找值58匹配的消息。由第二组件18确定的不同结果指示第一组件16的硬件和/或逻辑可能存在某些问题,其确定了与期望结果(即该记录与该值匹配)不同的结果。在这种情况下,第二组件18指示(在块174处)第一组件16处于可能导致将第一组件16与操作隔离的差错模式。如果存在第一组件16的冗余实例,诸如多个适配器,则第一组件16的隔离可能不中断服务器4的操作。
如果第二组件18使用差错检查码60验证记录地址和值不是有效的(在块166处),则第一组件16可能没有适当操作,因为第一组件16使用的提供给第二组件18的记录地址或者查找值与由主机2传输的记录地址56或者查找值58不同。在这种情况下,第二组件18前进到块174以将第一组件16与操作隔离。
描述的由第一组件16和第二组件18执行的某些操作可由服务器4中的I/O管理器12或者其他组件执行。
图5示出了由操作系统10执行的对接收自服务器4的响应于查找命令50的结果进行处理的操作的实施方式。一旦从服务器4接收(在块200处)响应于查找命令50的结果,如果该响应指示(在块202处)在所提供地址56处的记录与所提供查找值58匹配,则操作系统10继续进行修改(在块204处)记录8的操作。如果该响应指示该记录与值58不匹配(在块202处),指示尽管记录8被锁定但仍被改变,则操作系统10确定(在块206处)是否存在导致此失败的服务器组件故障,诸如第一组件16(例如,适配器、硬件和/或软件)的故障。如果存在服务器组件故障,则操作系统10可以重发(在块208处)查找命令50,以便用于出错的和被隔离的第一组件的故障转移(failover)组件(即,其他可用冗余适配器之一)能够处理查找请求。如果消息没有指示在服务器组件16处存在问题或者差错(在块208处),则操作系统10可以执行(在块210处)对于发起修改操作和生成查找请求50的主机2组件的差错检查,以诊断问题。
通过所述具体实施方式,如果第一组件16没有得到预期的结果,则第二组件18检查由第一组件16确定的查找结果。例如,如果记录8(或者包括记录8的例如表格、对象等数据结构)得到锁定,则可能希望在锁定后确定的记录值不改变。如果第一组件16确定查找结果不是预期的,则作为故障检修操作的部分,第二组件18再次计算结果以确定在第一组件16的硬件和/或逻辑(例如,软件)中是否存在差错。
图6示出了一个可替换计算环境实施方式。一个或者多个主机302(仅示出一个)包括一个或者多个处理系统304a、304b...304n,其通过向控制单元306提供多个逻辑通路的通道子系统308将输入/输出(I/O)请求传送至控制单元306。每个处理系统304a、304b...304n包括操作系统305以管理通路相关的操作。通道子系统308管理通过适配器312延伸的逻辑通路310。适配器312提供物理层,其中通过该物理层,逻辑通路310延伸至控制单元306、或者通过交换机(未示出)延伸至多个控制单元。操作系统305可以进一步将多个逻辑通路310与通路组相关联,其中通路组中的所有通路可以由一个处理系统304a、304b...304n用来与控制单元306进行通信。
每个处理系统304a、304b...304n可以包括中央处理单元(CPU)执行程序,该程序包括操作系统305和通道子系统308代码。可替换地,每个处理系统304a、304b...304n可以包括多个逻辑分区(LPAR)之一,其中每个逻辑分区作为独立的系统进行操作,执行它们自身的操作系统305并且可以共享通道子系统308代码。在进一步的实施方式中,每个处理系统可以包括处理器的逻辑分区。以此方式,主机2中的一个或者多个处理器可以实现多个逻辑分区(LPAR)。多个处理系统304a、304b...304n可以共享单个逻辑通道子系统16,或者不同的处理系统304a、304b...304n可以使用不同的逻辑通道子系统。
通道子系统308包括通道子系统程序316以执行将I/O请求从处理系统304a、304b...304n传送至控制单元306的操作。操作系统305管理I/O请求。通道子系统程序316从通道子系统308获取I/O请求。包含一个或者多个存储器设备的存储器317包括由通信子系统程序16用于管理I/O请求的信息。
通道子系统程序316可以处理通道程序,其包含CCW命令,该CCW命令包括作为修改由控制单元306所管理记录的操作的部分的查找命令50,诸如修改内容卷表(VTOC)中的条目的操作。因此,通道子系统程序316可以执行一系列命令来执行图3和图5的操作,用以确定自从包括要修改的记录的表或其他数据结构(例如VTOC)得到锁定以来,要更新的记录是否已经被修改。
控制单元306管理来自处理系统304a、304b...304n的、访问存储系统318a、318b...318n的请求,所述的存储系统318a、318b...318n诸如轨道、分区、逻辑设备、逻辑卷、逻辑单元号(LUN)、逻辑子系统(LSS)或者存储装置的其他逻辑或物理单元。存储装置318a示出了包括一个或者多个LSS 32的配置,其中每个LSS 32中配置有一个或者多个卷34。卷可以跨过多个存储设备延伸。术语“设备”指示任何物理或者逻辑的数据存储单元,诸如物理轨道、LSS、分区、逻辑卷和卷等。控制单元306包括其中可以缓冲来自存储系统318a、318b...318n的数据的存储器324、从主机302接收命令和请求的适配器326、以及处理联合体328。存储装置318a可以进一步包括提供关于在卷334中定义的每个数据集的信息的内容卷表(VTOC)336,其中所述信息包括分配给每个定义的数据集的存储位置的范围。
在一个实施方式中,适配器326可以包括最初对查找命令中指示的记录进行检查的第一组件,并且处理联合体328可以包括第二组件,该第二组件执行检查操作,以检查由适配器326执行的查找检查。
主机302可以包括本领域公知的计算设备,诸如工作站、大型机、服务器等。控制单元306可以包括存储子系统或者服务器(诸如企业存储服务器、存储控制器等),或者用于管理对附加卷的I/O请求的其他设备。存储装置318a、318b...318n可以包括本领域公知的存储设备,诸如互联的硬盘驱动器(例如,配置为DASD、RAID、JBOD、虚拟设备等)、磁带、电子存储器、闪存、光盘等。主机302可以通过逻辑通路310与控制单元306进行通信,该逻辑通路310可以通过诸如局域网(LAN)、存储域网(SAN)、广域网(WAN)、对等网络和无线网络等网络进行延伸。可替换地,主机302可以通过诸如外设组件互联(PCI)总线或者串行接口的总线接口与控制单元306进行通信。
补充实施方式细节
所述操作可以实现为方法、装置或者使用标准编程和/或工程技术的产品,以制造软件、固件、硬件或者其任意组合。所述操作可以实现为“计算机可读介质”中保存的代码,其中处理器可以从该计算机可读介质中读取并执行代码。计算机可读介质可以包括诸如磁性存储介质(例如,硬盘驱动器、软盘、磁带等)、光存储装置(CD-ROM、DVD、光盘等)、易失性和非易失性存储器设备(例如,EEPROM、ROM、PROM、RAM、DRAM、SRAM、闪存、固件、可编程逻辑等)等。实现所述操作的代码可以进一步在硬件逻辑(例如,集成电路芯片、可编程门阵列(PGA)、专用集成电路(ASIC)等)中实现。再进一步,实现所述操作的代码可以在“传输信号”中实现,其中传输信号可以通过空间或者通过诸如光纤、铜线等的传输介质来传播。在其中编码了代码或者逻辑的传输信号可以进一步包括无线信号、卫星传输、无线电波、红外信号、蓝牙等。在其中编码了代码或者逻辑的传输信号能够由发射台传输并由接收台接收,其中在传输信号中编码的代码或者逻辑可以被解码并存储在接收和发射台或者设备处的硬件或者计算机可读介质中。“产品”包括计算机可读介质、硬件逻辑、和/或在其中实现代码的传输信号。其中编码有实现了所述操作的实施方式的代码的设备可以包括计算机可读介质或者硬件逻辑。当然,不偏离本发明范围的情况下,本领域技术人员将认识到可以对此配置进行多种修改,并且所述产品可以包括本领域中公知的合适的信息承载介质。
术语“一个实施方式”、“实施方式”、“多个实施方式”、“该多个实施方式”、“一个或者多个实施方式”、“某些实施方式”和“一个实施方式”意思是“本发明的一个或者多个(但不是所有的)实施方式”,除非另外明确地表述。
术语“包括”、“包含”、“具有”及其变化的意思是“包括但不仅限于”,除非另外明确地表述。
枚举的列出的项目并不意味着可以手动地排除任一或者所有条目,除非另外明确地表述。
术语“一个”、“一种”和“该”意思是“一个或者多个”,除非另外明确地表述。
彼此通信的设备彼此不需要持续地通信,除非另外明确地表述。另外,彼此通信的设备可以直接通信或者通过一个或者多个媒介间接通信。
对具有几个彼此通信的组件的实施方式的描述并不意味着所有这些组件都是需要的。相反,描述多种可选组件以说明本发明可能的实施方式的广泛类型。
此外,尽管可以序列顺序描述处理步骤、方法步骤、算法等,但是可以配置这些处理、方法和算法以按交替顺序进行工作。换言之,所描述的步骤的任何顺序或者序列不必指示要求以该顺序来执行步骤。可以以任何可行的顺序执行在此所述的处理步骤。此外,可以同时执行某些步骤。
当在此描述单个设备或者产品时,容易理解可以使用多于一个的设备/产品(无论它们是否协作)以替代单个设备/产品。类似地,当在此描述多于一个的设备或者产品(无论它们是否协作)时,容易理解可以使用单个设备/产品以替代多于一个设备或者产品,或者可以使用不同数量的设备/产品以替代示出数量的设备或者程序。可替换地,可以由未明确地描述为具有这样的功能性/特性的一个或者多个设备来具体化设备的功能性和/或特性。因此,本发明的其他实施方式不需要包括设备本身。
此外,当引用标号字母(诸如“a”、“b”或者“n”用于指示特定数目的项目)时,用于不同元件的引用标号“a”、“b”或者“n”可以指示相同或者不同数量的这种元件。
图2示出了以某种格式保存的信息。在可替换实施方式中,可以由可替换的数据结构和格式并在不同的组合中保存这些附图示出的信息。
图3、图4和图5示出的操作显示了以某种顺序出现的某些事件,在可替换实施方式中,可以以修改或者移除的不同顺序来执行某些操作。而且,可以向上述逻辑加入步骤并仍然遵循所述的实施方式。此外,在此所述的操作可以顺序地出现或者可以并行地处理某些操作。再进一步,可以由单个处理单元或者分布式处理单元执行操作。
为了说明和描述的目的,上文给出了本发明各种实施方式的描述。该说明并非旨在于穷举或者将本发明限制于所公开的精确形式。根据上述教导,可以进行许多改进和变化。其意图是本发明的范围不受该详细说明的限制,而是由所附的权利要求书来限定本发明的范围。上述说明书、示例和数据为本发明组成的制造和使用提供了完整描述。由于可以在不脱离本发明的精神和范围的情况下实现本发明的许多实施方式,因此本发明在于下文所附的权利要求书中。
Claims (19)
1.一种作为修改记录操作的部分的核实记录的方法,包括:
接收用以确定记录与值是否匹配的查找请求;
由第一组件执行该查找请求以确定该记录与该值是否匹配;
响应于确定该记录与该值不匹配,由该第一组件将核实请求发送至没有执行该查找请求的第二组件以执行该查找请求,用以确定该记录与该值是否匹配,其中到该第二组件的核实请求包括用于该记录的地址和该值的差错检查码;
由该第二组件使用该差错检查码来执行差错检查操作,以验证由该第一组件使用的记录地址和该值有效;
响应于该第二组件确定该记录与该值匹配,指示该第一组件处于差错模式,其中在该差错模式中该第一组件与操作隔离;
响应于该第二组件确定该差错检查码验证该记录地址和该值不是有效的,指示该第一组件处于差错模式;以及
将该第一组件和第二组件执行该查找请求的结果写入日志。
2.根据权利要求1所述的方法,进一步包括:
如果所述第一组件确定该记录与该值不匹配,则确定是否设置了与该查找请求相关联的标志,其中响应于确定设置了该标志而仅仅将该核实请求发送至该第二组件。
3.根据权利要求2所述的方法,其中设置的标志指示该查找请求是更新与该记录相关联的数据的原子操作的部分。
4.根据权利要求2所述的方法,进一步包括:
响应于确定没有设置指示将该核实请求发送至该第二组件的标志,将该第一组件执行该查找请求的结果写入日志。
5.根据权利要求1所述的方法,其中查找到的记录是记录集的成员,该记录集包括:耦合的数据集记录,其中执行查找以确定主机是否仍然是被管理的主机组的成员;以及内容卷表记录,其中执行该查找以确定在修改该记录的操作期间用于该记录的值是否没有被改变。
6.根据权利要求1所述的方法,其中该第一组件包括网络适配器,且其中该第二组件包括处理器联合体。
7.一种作为修改记录操作的部分的核实记录的方法,包括:
发起对于由系统管理的存储装置中的记录进行修改的操作;
向该系统发送设置锁定的命令,以防止在该操作期间其他处理修改该记录;
从该存储装置读取该记录以确定用于该记录的值;
生成对该系统的查找请求,以确定要修改的记录是否具有所确定的用于该记录的值,其中该系统使用第一组件执行该查找请求;
响应于该系统确定该记录与该值不匹配,设置标志以使得该系统执行第二检查操作,从而使用在该第一组件执行查找请求时没有涉及的第二组件再次执行该查找请求;
将该查找请求传输至该系统;
接收来自该查找请求的指示该记录与该值是否匹配的结果;
响应于指示该记录与该值匹配的结果,继续进行修改该记录的操作;以及
响应于指示该记录与该值不匹配的结果,终止修改该记录的操作。
8.根据权利要求7所述的方法,其中在用于该查找请求的命令中传输该标志。
9.根据权利要求7所述的方法,其中结果指示该第一组件中的差错是否引起该记录与该值不匹配,该方法进一步包括:
响应于指示该差错不是该第一组件的差错导致的结果,对发起该操作以及生成该查找请求的组件执行差错检查。
10.一种作为修改记录操作的部分的核实记录的设备,包括:
用于接收用以确定记录与值是否匹配的查找请求的装置;
用于使得第一组件执行该查找请求以确定该记录与该值是否匹配的装置;
用于使得响应于该记录与该值不匹配,则由该第一组件将核实请求发送至没有执行该查找请求的第二组件的装置;
用于使得响应于该核实请求,由该第二组件执行该查找请求,以确定该记录与该值是否匹配的装置,其中到该第二组件的该核实请求包括用于该记录的地址和该值的差错检查码;
用于使得响应于该核实请求,由该第二组件使用该差错检查码来执行差错检查操作,以验证该由第一组件使用的记录地址和该值有效的装置;
用于响应于该第二组件确定该记录与该值匹配,指示该第一组件处于差错模式中的装置,其中在差错模式中隔离对该第一组件进行操作;
用于响应于该第二组件确定该差错检查码验证该记录地址和该值不是有效的,指示该第一组件处于差错模式的装置;以及
用于将该第一组件和第二组件执行该查找请求的结果写入日志的装置。
11.根据权利要求10所述的设备,其中该设备进一步包括:
用于如果所述第一组件确定该记录与该值不匹配,则确定是否设置了与该查找请求相关联的标志的装置,其中仅响应于确定设置了该标志而将该核实请求发送至该第二组件。
12.根据权利要求11所述的设备,其中设置的标志指示该查找请求是更新与该记录相关联的数据的原子操作的部分。
13.根据权利要求11所述的设备,其中该设备进一步包括:
用于响应于确定没有设置指示将该核实请求发送至该第二组件的标志,将该第一组件执行该查找请求的该结果写入日志的装置。
14.根据权利要求10所述的设备,其中查找到的记录是记录集的成员,该记录集包括:耦合的数据集记录,其中执行查找以确定主机是否仍然是被管理的主机组的成员;以及内容卷表记录,其中执行该查找以确定在修改该记录操作期间用于该记录的值是否没有被改变。
15.根据权利要求10所述的设备,其中该第一组件包括网络适配器,且其中该第二组件包括处理器联合体。
16.根据权利要求10所述的设备,其中该设备是包括计算机可读存储器和硬件设备的设备集的至少一个成员。
17.一种作为修改记录操作的部分的核实记录的设备,包括:
用于发起对于由服务器管理的存储装置中的记录进行修改的操作的装置;
用于向该服务器发送命令设置锁定,以防止在该操作期间其他处理修改该记录的装置;
用于从该存储装置读取该记录以确定用于该记录的值的装置;
用于生成对该服务器的查找请求以确定要修改的记录是否具有所确定的用于该记录的值的装置,其中该服务器使用第一组件执行该查找请求;
用于响应于该服务器确定该记录与该值不匹配,设置标志以使得该服务器执行第二检查操作,从而使用在该第一组件执行该查找请求时没有涉及的第二组件再次执行该查找请求的装置;
用于将该查找请求传输至该服务器的装置;
用于接收来自该查找请求的指示该记录与该值是否匹配的结果的装置;
用于响应于指示该记录与该值匹配的结果,继续进行修改该记录的操作的装置;以及
用于响应于指示该记录与该值不匹配的结果,终止修改该记录的操作的装置。
18.根据权利要求17所述的设备,其中在用于该查找请求的命令中传输该标志。
19.根据权利要求17所述的设备,其中结果指示该第一组件的差错是否引起该记录与该值不匹配,其中该设备进一步包括:
用于响应于指示该差错不是该第一组件的差错导致的结果,对发起该操作以及生成该查找请求的组件执行差错检查的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/538,401 US7958406B2 (en) | 2006-10-03 | 2006-10-03 | Verifying a record as part of an operation to modify the record |
US11/538,401 | 2006-10-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101158915A CN101158915A (zh) | 2008-04-09 |
CN101158915B true CN101158915B (zh) | 2010-06-02 |
Family
ID=39262195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101535795A Active CN101158915B (zh) | 2006-10-03 | 2007-09-21 | 作为修改记录操作的部分的核实记录的方法和系统 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7958406B2 (zh) |
JP (1) | JP5063275B2 (zh) |
CN (1) | CN101158915B (zh) |
TW (1) | TW200825905A (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7958406B2 (en) * | 2006-10-03 | 2011-06-07 | International Business Machines Corporation | Verifying a record as part of an operation to modify the record |
US7949794B2 (en) * | 2006-11-02 | 2011-05-24 | Intel Corporation | PCI express enhancements and extensions |
US7818473B2 (en) * | 2008-08-11 | 2010-10-19 | International Business Machines Corporation | Embedded locate records for device command word processing |
CN102646453A (zh) * | 2011-02-18 | 2012-08-22 | 安凯(广州)微电子技术有限公司 | NandFlash控制器中错误校正码模块的测试方法及系统 |
US8788877B2 (en) * | 2011-08-03 | 2014-07-22 | International Business Machines Corporation | Acquiring a storage system into copy services management software |
US9965513B2 (en) * | 2014-11-25 | 2018-05-08 | Sap Se | Set-orientated visibility state retrieval scheme |
US9792066B2 (en) * | 2015-02-23 | 2017-10-17 | International Business Machines Corporation | Handling failure of a command to add a record to a log |
US20230229352A1 (en) * | 2022-01-20 | 2023-07-20 | Micron Technology, Inc. | Host training indication for memory artificial intelligence |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US6721740B1 (en) * | 1998-05-29 | 2004-04-13 | Sun Microsystems, Inc. | Method and apparatus of performing active update notification |
US6378087B1 (en) * | 1999-06-08 | 2002-04-23 | Compaq Computer Corporation | System and method for dynamically detecting unchecked error condition values in computer programs |
US6715036B1 (en) * | 2000-08-01 | 2004-03-30 | International Business Machines Corporation | Method, system, and data structures for transferring blocks of data from a storage device to a requesting application |
US6850938B1 (en) * | 2001-02-08 | 2005-02-01 | Cisco Technology, Inc. | Method and apparatus providing optimistic locking of shared computer resources |
JP4047557B2 (ja) * | 2001-05-29 | 2008-02-13 | 富士通株式会社 | データベース管理システム,データベース管理処理方法,データベース管理システム用のプログラムおよびその記録媒体 |
US6973511B2 (en) * | 2002-03-28 | 2005-12-06 | International Business Machines Corporation | System and method for dual stage persistent reservation preemption protocol |
TW591441B (en) * | 2003-07-28 | 2004-06-11 | Accton Technology Corp | Database system and data access method thereof |
GB2413742B (en) * | 2003-11-05 | 2006-05-31 | Internet Comp Bureau Plc | Computer address resolution |
JP2006085539A (ja) * | 2004-09-17 | 2006-03-30 | Fujitsu Ltd | データベース管理プログラム、方法、装置及び記録媒体 |
US7478265B2 (en) | 2004-10-14 | 2009-01-13 | Hewlett-Packard Development Company, L.P. | Error recovery for input/output operations |
GB0426309D0 (en) | 2004-11-30 | 2004-12-29 | Ibm | Method and system for error strategy in a storage system |
US7404133B2 (en) | 2004-12-12 | 2008-07-22 | Hewlett-Packard Development Company, L.P. | Error detection and correction employing modulation symbols satisfying predetermined criteria |
US7418636B2 (en) * | 2004-12-22 | 2008-08-26 | Alcatel Lucent | Addressing error and address detection systems and methods |
JP2006309447A (ja) * | 2005-04-27 | 2006-11-09 | Hitachi Ltd | 記憶システム及びバックアップ方法 |
JP4852938B2 (ja) * | 2005-09-02 | 2012-01-11 | 富士ゼロックス株式会社 | データサーバ及びデータ管理方法及びプログラム |
US8364711B2 (en) * | 2006-05-09 | 2013-01-29 | John Wilkins | Contact management system and method |
US7958406B2 (en) * | 2006-10-03 | 2011-06-07 | International Business Machines Corporation | Verifying a record as part of an operation to modify the record |
US8111838B2 (en) * | 2007-02-28 | 2012-02-07 | Panasonic Corporation | Conferencing apparatus for echo cancellation using a microphone arrangement |
-
2006
- 2006-10-03 US US11/538,401 patent/US7958406B2/en not_active Expired - Fee Related
-
2007
- 2007-09-21 CN CN2007101535795A patent/CN101158915B/zh active Active
- 2007-09-25 JP JP2007247079A patent/JP5063275B2/ja active Active
- 2007-09-29 TW TW096136606A patent/TW200825905A/zh unknown
-
2011
- 2011-03-29 US US13/075,079 patent/US9411536B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN101158915A (zh) | 2008-04-09 |
US9411536B2 (en) | 2016-08-09 |
JP2008090839A (ja) | 2008-04-17 |
US7958406B2 (en) | 2011-06-07 |
US20110179070A1 (en) | 2011-07-21 |
TW200825905A (en) | 2008-06-16 |
JP5063275B2 (ja) | 2012-10-31 |
US20080082496A1 (en) | 2008-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101158915B (zh) | 作为修改记录操作的部分的核实记录的方法和系统 | |
CN101288052B (zh) | 存储数据的方法和系统 | |
KR101758544B1 (ko) | 비휘발성 메모리 시스템에서의 동기 미러링 | |
US5619644A (en) | Software directed microcode state save for distributed storage controller | |
US7752387B2 (en) | Offloading firmware update tasks from RAID adapter to distributed service processors in switched drive connection network enclosure | |
US20060277328A1 (en) | System and method for updating the firmware of a device in a storage network | |
US20040019821A1 (en) | Method and apparatus for reliable failover involving incomplete raid disk writes in a clustering system | |
US20060236149A1 (en) | System and method for rebuilding a storage disk | |
US20060190682A1 (en) | Storage system, method for processing, and program | |
US8438332B2 (en) | Apparatus and method to maintain write operation atomicity where a data transfer operation crosses a data storage medium track boundary | |
US8839026B2 (en) | Automatic disk power-cycle | |
US20090265510A1 (en) | Systems and Methods for Distributing Hot Spare Disks In Storage Arrays | |
US7984260B2 (en) | Storage system provided with a plurality of controller modules | |
CN105659213A (zh) | 无共享分布式存储系统中的目标驱动独立数据完整性和冗余恢复 | |
US20080222214A1 (en) | Storage system and remote copy system restoring data using journal | |
US20040153833A1 (en) | Fault tracing in systems with virtualization layers | |
CN100487656C (zh) | 资源管理的方法与系统 | |
US20130227345A1 (en) | Logically Extended Virtual Disk | |
US7797577B2 (en) | Reassigning storage volumes from a failed processing system to a surviving processing system | |
US20070294476A1 (en) | Method For Representing Foreign RAID Configurations | |
US20190087122A1 (en) | Storage system | |
US7299385B2 (en) | Managing a fault tolerant system | |
US6931499B2 (en) | Method and apparatus for copying data between storage volumes of storage systems | |
CN104067241A (zh) | 同步本地存储设备和远程存储设备 | |
KR20220158832A (ko) | 데이터 스토리지 시스템에서 라이트 소트 관리 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |