kafoso / doctrine-firebird-driver

Firebird driver for the Doctrine DBAL/ORM
MIT License
14 stars 16 forks source link

The driver is incompatible with PHP 7.4 #9

Open rimas-kudelis opened 4 years ago

rimas-kudelis commented 4 years ago

PHP have unbundled the interbase extension as of 7.4 and moved it into PECL. However, the project on PECL has no releases as of yet, and considering the reasons for unbundling and deprecating the extension, and its commit log, I suspect it's quite likely that there will not be any releases at all.

Would it be possible to migrate this driver to PDO? Also, I'm curious about why it wasn't implemented this way from the start.

rimas-kudelis commented 4 years ago

I've started adapting the lib for PDO. Not sure how successful I'll be though.

kafoso commented 4 years ago

Hello

Firebird is an... interesting database system. Last time we worked with PDO, we got segmentation faults left and right. It was impossible to know when, where and why something failed. It just died - hard. Alas, we fell back on the Interbase functions.

It may be that the PDO implementation has vastly improved. Definitely worth checking up on.

I am on maternity leave at the moment, but I'll look at in in a couple of weeks.

Thanks for PR #10. I'll check it out and run the tests etc.

rimas-kudelis commented 4 years ago

It doesn't seem like anyone in PHP is too interested in maintaining these Firebase functions, so it was a bit of a surprise for me that support for dialects was added in 7.4.

I'm using my fork of this library (the one in #10) in a project I'm working on now, and so far at least querying the database seems okay (I've run a couple procedures and select statements, and nothing seems to have crashed yet).

Sure, take your time reviewing the PR! If you decide to accept it and make a new release, I suggest to create a new branch for the PDO-backed versions (3.0 maybe?)

cgrandval commented 3 years ago

Hi @kafoso, hope everything went well with your maternity leave :-). Have you had any time to look at the PR? I'm looking to use this library in a modern Symfony5/php 7.4 project and that would really help us. Thanks

satwareAG-ironMike commented 2 years ago

I'm using the current driver in a recent Symfony5/PHP 7.4 based project. For the firebird connection I'm using the following interbase compatible driver: https://github.com/FirebirdSQL/php-firebird What I'm interested in, is an Update for the doctrine-firebird-driver to officially support Firebird 3 (it does now, but I have to downgrade FB3 security). I wrote an E-Mail to Kasper offering financial support in doing so as we need it in a comercial application. I'm not into the PDO approach as it does not work in the scenarios I have tested. If anyone else with good knowledge in doctrine is capable of supporting this project, please get in touch with me.

kafoso commented 2 years ago

Hello everyone

My apologies for the absence. Real-life, you know.

@satwareAG-ironMike: I tried to look for your e-mail, but I cannot seem to find it.

PDO is definitely worth testing again. I think I'll be looking into putting everything in a Docker container rather than a VM.

I'll take another look at #10.

satwareAG-ironMike commented 2 years ago

@satwareAG-ironMike: I tried to look for your e-mail, but I cannot seem to find it.

@kafoso I'll resend my offer

PDO is definitely worth testing again. I think I'll be looking into putting everything in a Docker container rather than a VM.

I also tried to contact @MartinKoeditz to offer help in further advancing the PHP Driver https://firebirdsql.org/en/devel-php-driver/ Please allow me a stupid question: I thought that the php-driver is ibase compatible and had nothing to do with the PDO Driver. I could not write to blobs in a stable way using PDO. When I've switched to a self-compiler version of https://github.com/FirebirdSQL/php-firebird everything worked and I'm using it in production for the last 9 months.

I ran all your tests with in docker with PHP 7.4 and that driver succesfully dispite 2 of them.

Anyways, I'd be glad to help getting Firebird doctrine support up and running again.

MartinKoeditz commented 2 years ago

@satwareAG-ironMike Any help is welcome. Maybe I just didn't recognised your offer.

rimas-kudelis commented 2 years ago

Honestly, I guess it makes more sense to port this driver to the new php-firebird backend instead of PDO, at least as long as the PDO driver's functionality is not on par with php-firebird's.

When I created #10, I only needed very limited functionality from the driver, and PDO did the trick. I probably wasn't even aware of php-firebird back then.

satwareAG-ironMike commented 2 years ago

@satwareAG-ironMike Any help is welcome. Maybe I just didn't recognised your offer. Sorry for my late response.

@MartinKoeditz I tried to contact you directly via E-Mail (in german to martin.koeditz@it-syn.de on 12.11.2021) Subject: "Firebird Treiber und Doctrine Support"

It would be great if we could find a way how my company could support the further development of the firebird php-driver and @kafoso 's doctrine plugin.

satwareAG-ironMike commented 2 years ago

@satwareAG-ironMike: I tried to look for your e-mail, but I cannot seem to find it.

@kafoso I've resend my offer to soefritz@gmail.com Subject: WG: Adding firebird 3 support to kafoso/doctrine-firebird-driver

andreoneres commented 2 years ago

Hello @rimas-kudelis. How are you? Did you make any progress during this period?

MartinKoeditz commented 2 years ago

@satwareAG-ironMike Please send the mail again. Somehow it never reached me. Maybe caused by the SPAM filter...

rimas-kudelis commented 2 years ago

Hello @rimas-kudelis. How are you? Did you make any progress during this period?

Hi! I haven't worked on this after submitting #10, because I'm no longer involved in the project where I needed this driver.

satwareAG-ironMike commented 2 years ago

@satwareAG-ironMike Please send the mail again. Somehow it never reached me. Maybe caused by the SPAM filter... Hello Martin perhaps you could send me an opening mail with your contact data? mw@satware.com kind regards Michael