PEAR is discontinued

This is a static archive preserving historical releases and metadata. No new packages or updates will be published. For updates to existing packages, or to publish new packages, please use Composer and Packagist.

Home » Database » DB_NestedSet » Bug #6061

problem creating root node with Oracle

Details

Submitted2005-11-24 19:41 UTC
Fromomansour at gmail dot com
Assigneddatenpunk
StatusBogus
PackageDB_NestedSet
PHP Version4.3.11
OSLinux
Roadmaps(Not assigned)

Comments

[2005-11-24 19:41 UTC] omansour at gmail dot com

Description:
------------
wrong SQL is generated while creating a root node

Test script:
---------------
line 975
replace : $parent['norder'] = is_null($tmp_order) ? 0 : $tmp_order;
by : $parent['norder'] = (is_null($tmp_order) or empty($tmp_order)) ? 0 : $tmp_order;

Expected result:
----------------
$tmp_order should'nt be empty

Actual result:
--------------
$tmp_order is empty with Oracle - DB - DB_PORTABILITY_ALL

[2005-11-24 21:19 UTC] datenpunk at php dot net

Could you please provide a little more info what you are trying to do. I don't understand your test script. Please use some lines of code which lead to this problem.

Thanks for your help

--
Daniel Khan

[2005-11-25 08:48 UTC] omansour at gmail dot com

The test-scrip is just the hack written in your package to
make the create root node work with Oracle.

Maybe adding a is_empty test is not the good solution but
before the code commented
// Let's open a gap for a new node
was generated a SQL like that :
UPDATE (ok) SET (ok) WHERE (ok) AND streh >

without the last variable whis $parent['norder']

maybe it's because I have actived portablity options in my
DB configuration but I need them.

(I have also an other problem, see bug #6060, maybe related
to Nestedset)

[2005-12-18 17:06 UTC] dv at allyoucanthink dot de

in function createRootNode() with DB::oci8 driver (DB_PORTABILITY_ALL): following call ´$tmp_order = $this->_getOne($qry)´ returns empty string and not NULL as expected ...

[2006-01-11 17:38 UTC] omansour at gmail dot com

The proposed patch need to be applied to each version of
Nestedset I use. Is it possible to think to a further
integration and another release of DB_Nestedset ?

[2006-01-13 09:59 UTC] datenpunk at php dot net

yes - I will roll out a new release including your fix within this weekend.

Thanks for your patch & patience

--
Daniel Khan

[2006-01-15 20:55 UTC] datenpunk at php dot net

Looking closely at this issue I am not sure if this has anything to do with DB_NestedSet.
I will talk to some ppl - maybe anyone could explain this to me.

[2006-01-16 16:25 UTC] omansour at gmail dot com

Hey

I have noticed this problem on several plateforms, with
Oracle and MySQL. You right, I am not sure if this bug is
directly coming from DB_Nestedset but , at least, it's
bullet proofing the code ;-) and it's not dangerous for the
rest of the class.

So, for me, I would be cool to patch the code.

greetings
Olivier

[2006-02-26 13:45 UTC] datenpunk at php dot net

I won't work around a bug inside another package within my package.
Especially because I don't want to risk breaking BC.
Sorry. Maybe I will take this into account for a new major version.