Paul - do you want a committer bit? I'd love for you to have one.
Thanks,
Rob
--
Thanks,
Rob Kinyon
Founder and CTO, DBIX Corporation
If it's for svn.ali.as, I'm not revoking any of those. If it's for
svn.perl.org, I'll need to get you new ones.
> I'll write a test for sure. I may even try to hunt it down a little,
> depends how slow things are tomorrow.
That would be phenomenal! Note: What's in SVN is currently almost
ready for deployment, but several tests (primarily for transactions)
are failing. I was supposed to get it finalized over a week ago, but
$Life has completely overtaken me. I'm hoping that this upcoming
week-long conference will give me some time to work through it.
--
Thanks,
Rob Kinyon
> So, I'm pretty much talking to myself ... Sorry. I pushed a commit
> to the svn that seems to fix the leak. I decided that we probably
> don't need to track entries when we're not in a transaction. It
> doesn't seem to cause any extra test failures to just return from
> add_entry() when trans_id is 0, so that's what I did.
>
Might be worth going back and looking at anything else
that tracks state: without any transaction outstanding
the state should be flushed with each action (a.k.a.
AutoCommit).
Q: Is there any possibility that data isn't being
flushed when transactions commit/rollback?
That's another classis source of leaks.
Q: I've lost track of the thread; which copy of
the module are you using (svn rev, CPAN, whatever)?
thanx
Yes, your change to add_entry() is perfectly in the spirit of what it
should be doing. I don't know why I missed that one. (Many eyes and so
forth, I guess.)
Any other bugs you've found, please fix. Oh, and if you're in the
mood, please document, too. In fact, documenting much better than
fixing. :-/
And, for the record, I wasn't at OSCON (however much I would've liked
to be). It was another 8 day conference where you don't get much
hacking time. :-/
Ideally, we would have some set of documents as .pod files in the
repository. That way, the documentation gets included in the CPAN
distro and is viewable on CPAN. This is the sort of thing that
DBIx::Class and Catalyst and Template Toolkit do. I tried to start
doing this with the Internals.pod and Cookbook.pod files, but I didn't
get very far.
> (I intend to hunt down that delete bug at some point. Time is the
> problem.)
Whatever help you can give is awesome.
Internals is actually completely out of date and wrong. The Cookbook
is decent, but there is no documentation at all of how transactions
work, how the sectors break down, or how the flow of code happens for
any action. The documentation in Deep.pod is pretty thorough (Joe did
a great job), but it's not organized very well. There's no sense of
"This is important for newbies" vs. "This is good stuff for experts."
As for documenting the add_entry() change, I guess I was thinking more
in the direction of "Here's this set of functions that are only useful
in transactions." That would lead to "This is the stuff we need to
track for transactions", etc.
Internal comments, API information for each layer of
the call stack, examples tracing an operation down the
call stack so that someone can implement a new low-
level module if they wanted to.
--
Steven Lembark 85-09 90th St.
Workhorse Computing Woodhaven, NY, 11421
lem...@wrkhors.com +1 888 359 3508