Bug with Oracle database and Server Side Processing (PHP)?

Bug with Oracle database and Server Side Processing (PHP)?

unibocconi-ltccunibocconi-ltcc Posts: 12Questions: 4Answers: 0
edited September 2022 in Free community support

It seems that I encountered an issue with SSP (PHP library), reported also by other users:
- https://datatables.net/forums/discussion/73832
- https://datatables.net/forums/discussion/comment/206260/#Comment_206260

I think that the issue is there https://github.com/DataTables/Editor-PHP/blob/master/Database/Driver/OracleQuery.php#L127

Chose any oracle table and perform
SELECT * FROM your_table
WHERE rownum > 1

You'll get 0 results. That's why SSP fails with Oracle :(

A workaround may be this one

SELECT * FROM (SELECT rownum AS "row", t.* FROM your_table t) a
WHERE "row" BETWEEN 5 and 10;

but I'm not a DBA, so don't know if it is optimal in terms of performance.

Tested today with Oracle 19c, PHP8.1 (oci19c), Datatables 1.12.1, Datatables PHP 2.0.9

Replies

  • allanallan Posts: 61,686Questions: 1Answers: 10,100 Site admin

    Hi,

    Thanks for this. I think the Oracle VM we use for testing is out of date. I'll get it updated and see what we can do about a fix.

    Allan

  • unibocconi-ltccunibocconi-ltcc Posts: 12Questions: 4Answers: 0

    @allan if you need any help or testing from my side I am 100% available :)

  • allanallan Posts: 61,686Questions: 1Answers: 10,100 Site admin

    Thank you - apologies I've not been able to look into this yet. I've got a bug for it to make sure I get to it though - probably for the Editor 2.1 release.

    Allan

  • unibocconi-ltccunibocconi-ltcc Posts: 12Questions: 4Answers: 0

    Hi @allan, I confirm that this PR https://github.com/DataTables/Editor-PHP/pull/22 solves the issue reported.

    So from the next Editor-PHP release the issue is solved, while for 2.1.2 the issue is still there.

  • allanallan Posts: 61,686Questions: 1Answers: 10,100 Site admin

    Awesome - thanks for confirming!

    Allan

Sign In or Register to comment.