[Openais] CKPT: bug, saCkptCheckpointOpen returns 0

Steven Dake sdake at redhat.com
Mon Sep 18 23:19:26 PDT 2006


Magnus,

comments inline

On Tue, 2006-09-19 at 08:00 +0200, Magnus Engberg wrote:
> Hi Steven!
> 
> I am doing a reference application on top of openais to be used in our 
> internal testing. The reference application is started as a component by 
> the aisexec/amf. When using the checkpoint api I come across the 
> following scenario:
> 
> 1: checkpoint initialized with saCkptInitialize.
> 2: checkpoint opened as below
> 
> result = saCkptCheckpointOpen(	ckptHandle, &ckptName, NULL,
> 				SA_CKPT_CHECKPOINT_READ |
> 				SA_CKPT_CHECKPOINT_WRITE |
> 				SA_CKPT_CHECKPOINT_CREATE,
> 				SA_TIME_END, &checkpointHandle );

> result now has the value 0, it should ofcourse be SA_AIS_OK. The 
> checkpoint is created and a section can later be created with
> 

according to ais ckpt spec B.02.01 from 2005 the above call should
return ERR_INVALID_PARAM (see page 36 lines 1-5).  The reason is that
create was specified without any checkpoint creation flags.

I tested trunk without the patches from Hans and it does indeed return
INVALID_PARAM as required by the specification.  Attached is my test
application.

Are you sure your linking to the proper library?  There really isn't any
way for the calls to return the value 0.  Make sure you don't have extra
libraries installed for sa forum and are linking to the proper
libraries.

Until we resolve this issue further calls could possibly be corrupted
for some reason.

If you can alter the attached test case to generate the results you see,
I'd be happy to debug it further.

Also I posted some time ago a graphical test application (QT based)
which tests AMF and CKPT failover together.  You might take a look at
that.  If this application could be modified with your test cases it may
be useful for all.

Regards
-steve

> 3:
> result = saCkptSectionCreate(	checkpointHandle,
> 				&sectionCreationAttributes,
> 				"Section initial data",
> 				strlen("Section initial data") + 1);
> 
> result will again get the value 0 when the creation succeeds. The 
> checkpoint section can now be overwritten with
> 
> 4:
> result = saCkptSectionOverwrite(checkpointHandle, &sectionId,
> 				dataBuffer, dataSize + 1);
> 
> Here result get get the corect value (SA_AIS_OK) on success.
> 
> Please give me your opinion on this matter, I am running the aisexec 
> compiled from the trunk plus two patches from Hans Feldt (one in the 
> checkpoint service and one in the amf area).
> 
> Regards, Magnus
> _______________________________________________
> Openais mailing list
> Openais at lists.osdl.org
> https://lists.osdl.org/mailman/listinfo/openais
-------------- next part --------------
A non-text attachment was scrubbed...
Name: teste.c
Type: text/x-csrc
Size: 5968 bytes
Desc: not available
Url : http://lists.linux-foundation.org/pipermail/openais/attachments/20060918/ef3e4cfa/teste-0001.c


More information about the Openais mailing list