Status of IncludeSources patch

Code samples and contributions from users for ZeosLib's DBOs of version 6.x

Moderators: gto, cipto_kh, EgonHugeist, mdaems

Post Reply
sandeep_c24
Expert Boarder
Expert Boarder
Posts: 158
Joined: 06.11.2005, 01:43

Post by sandeep_c24 »

Hi Mark

I just updated my source from svn and I see an implementation of UncachedGet - stuff.

I am not sure if IncludeSources parameter (in Gatprocedures, GetTables, etc) has been left out on purpose for this version or have you guys forgotten about it?

Regards

Sandeep
User avatar
mdaems
Zeos Project Manager
Zeos Project Manager
Posts: 2766
Joined: 20.09.2005, 15:28
Location: Brussels, Belgium
Contact:

Post by mdaems »

Sandeep,

It's not 'left out' but 'not included yet'. As far as I remember we didn't apply this Getsources thing to SVN yet.
And indeed, now we'll have to make a new patch as it conflicts with the UncachedGet___ stuff. (I know because my working copy with your patch inside is now unusable :evil: )
My main problem with committing your patch right now is the fact that it affects the layout of the metadata resultsets. This means : a non-optional behavior change. And committing it to testing branch would mean an extra obstacle when doing other changes to the metadata code.
A remark on your patch : Shouldn't you add the IncludeSource parameter to the cache key? That way you would force the sources to be queried if one changes the IncludeSources option of the metadata component.

Mark
Image
sandeep_c24
Expert Boarder
Expert Boarder
Posts: 158
Joined: 06.11.2005, 01:43

Post by sandeep_c24 »

Hi Mark
A remark on your patch : Shouldn't you add the IncludeSource parameter to the cache key? That way you would force the sources to be queried if one changes the IncludeSources option of the metadata component.
This is a good idea. I think we should do this.

Do you have any ideas about its implementation?

I am sorry about my patch causing your working copy to stop working. After updating my copy has stopped working and I myself had to go back to an old copy of the source(I had a backup of my code so I am ok for now).

Do you have any suggestions as to how we should go about applying my patches or would you like to release this version and then add all my stuff to another version?

Regards

Sandeep
User avatar
mdaems
Zeos Project Manager
Zeos Project Manager
Posts: 2766
Joined: 20.09.2005, 15:28
Location: Brussels, Belgium
Contact:

Post by mdaems »

Do you have any ideas about its implementation?
I think it should be sufficient to change the GetxxxxCacheKey functions where sources are possible. And, of course, the calls to these functions.

I would like to add your behaviour changing code to a next version.
If you have other patches hanging around that don't impact current default behaviour or correct bugs these can be done immediately. (But must be applied separately to enable their migration from testing branch to trunk)
Behaviour changes with small code impact can also be done to testing branch. Your problem is another kind of stuff (as we saw doing the patch in this thread)

Some other idea: maybe it would be nice to have a public 'GetXXXSource' metadata function call for every database object type having a source. This would allow people not wanting to fetch every source to get the source of a specific object. (This is an example of stuff that could be added immediately ;) )

So for now we could go in two directions.
1. I just wait with integrating and you just maintain your modifications when the svn testing branch changes. This will probably just give a problem at this moment. Normally the metadata functions don't change that much as they have done now.
2. You do (mostly copy) the changes again to a separate working copy, but step by step, adding the new columns and function parameters last. This way we can fix the existing bugs and add the source retrieval functions immediately (version 6.6) Once that's done the behaviour changing part can be done and must be maintained until after the 6.6 release.

Personally I prefer the second route, but as you're supposed to do the coding (sorry for that, but no time to do it myself), it's up to you.

Mark

(I've split your post from the other thread so we can discuss this without disturbing technobot)
Image
Post Reply