[Koha-devel] Data Persistence and Plack

LAURENT Henri-Damien henridamien.laurent at biblibre.com
Fri Dec 17 12:34:19 CET 2010


Hi
I am continuing to work on Data Persistence and Plack support.
In that matter, I am first focusing on obvious circular references
between Modules.
I first naively thought that simply using direct calls to functions
without calling use module would solve the problem. But if compilation
is OK then at runtime, it would fail unless all the modules are loaded
in Plack... And in CGI mode, it would fail.

It seems that most of the Circular references in the code are owed to
functions which have been created to do some checking before doing an
operation...
For instance :
	CanItemBeRenewed
	CanItemBeReserved
	CanBookBeReserved
	CanItemBeIssued
	CanItemBeIssued
	....
	Deletion of Serials in DelBiblio

Those things would be solved if we would create new modules in order to
perform those checks and then call them not in the module but in the
script itself...
A kind of Controller.
My proposal is to create a new directory in C4/ called Decisions or
Controller (I am not fixed on a namespace for that.)
And then create inside one module for one "Object" Circulation Reserve,
Biblio, Serials...
And use that in the scripts.
I am aware that it would not fix circular references in the data
structures itself... But that would be a first step towards persistence.
Then we have to inspect at runtime the increase in Memory consuming and
control with introspection... Maybe a server could be built and some
apache logs replayed on that so that memory consumption could be traced.

If you are working on the same stuff, and want to share what point you
are at... Then come on #koha channel or let's organise a meeting around
that.

Any feedback would be welcome.
-- 
Henri-Damien LAURENT


More information about the Koha-devel mailing list