3
Jun

ADO.NET provider for Firebird version 2.6.5 released

I’m proud to announce new version of ADO.NET provider for Firebird – 2.6.5. It’s half maintenance release, half new features.

You can find all bug fixes in tracker.

The new features include and improvements:
* Support for Trace API in Firebird 2.5.
* Improvements in SQL generation for Entity Framework.
* Support for commands logging .
* Slightly faster command execution of big queries.
* And a lot of small code improvement making it more stable…

You can download it at http://sourceforge.net/projects/firebird/files/firebird-net-provider/2.6.5/ or http://www.firebirdsql.org/en/net-provider/.

Hope you’ll enjoy the release.

There's 32 Comments So Far

  • Kraftwurm
    June 3rd, 2011 at 14:59

    Thank you so much. You’re great!

  • SnowedUnder
    June 3rd, 2011 at 16:37

    Thanks, shame it was too late for a fix for my little problem (and probably DNET-367)
    http://forums.devshed.com/firebird-sql-development-61/sql-to-interbase-with-vb-net-how-820596.html#post2649725

    I’ve tried 2.6.5… same problem, the error is in the same place, but it’s line 613 now, not 597 :)

    System.ArgumentOutOfRangeException was unhandled
    Message=Index was out of range. Must be non-negative and less than the size of the collection.
    Parameter name: index
    ParamName=index
    Source=mscorlib
    StackTrace:
    at System.Collections.ArrayList.get_Item(Int32 index)
    at FirebirdSql.Data.Client.Managed.Version10.GdsDatabase.GetServerVersion() in C:\Users\Jiri\Desktop\NETProvider\source\FirebirdSql\Data\Client\Managed\Version10\GdsDatabase.cs:line 613
    at FirebirdSql.Data.Client.Managed.Version10.GdsDatabase.AfterAttachActions() in C:\Users\Jiri\Desktop\NETProvider\source\FirebirdSql\Data\Client\Managed\Version10\GdsDatabase.cs:line 242

    Can you just reopen DNET-367 and wrap the zero check around it as suggested please? Mind you, that would probably fix the crash there but have knock-on effects and move the problem somewhere else, LOL

    Cheers, atb

  • rungsant
    June 4th, 2011 at 11:30

    This release fix TIS620 Charset ?

  • cincura.net
    June 4th, 2011 at 15:33

    If you’re using InterBase, use .NET provider for InterBase. Not for Firebird. That’s the root cause of your problem.

  • cincura.net
    June 4th, 2011 at 15:36

    I don’t know anything about TIS620 charset and .NET provider.

  • Tom
    June 4th, 2011 at 22:31

    I’m new to .Net and try to create OData WCF Feed service for Excel PowerPivot.
    I sucess to create Data Model and Service with Firebird Server 2.5, but my production server is Firebird 1.5 and service always return “An error occurred while processing this request.”
    Is there any work around for read only Entity Framework use with Firebird server 1.5 (upgrade to 2.5 is not option)
    Tested with Provider 2.6.0 and 2.6.5

  • cincura.net
    June 5th, 2011 at 07:32

    The Firebird 1.5 is not supported. It’s missing some language features Entity Framework needs.

  • Tom
    June 6th, 2011 at 11:02

    Can you specify problematic source code in driver, maybe some workaround just for read only table select from Firebird 1.5. I will try to create custom driver just for WCF OData feed for Excel PowerPivot.

  • cincura.net
    June 6th, 2011 at 12:03

    It does not support select … from (select …) and this is heavily used in EF. Firebird 1.5 is even not supported Firebird version.

  • SnowedUnder
    June 6th, 2011 at 12:07

    Thanks for answering me Jiri.

    I have commented on this in the easiest place for me, on the forum – comment #8 and shown the limited choices in an edit to comment #2.

    Please reconsider the very quick change which sounds like it would make a lot of people happy in our search for a .net provider for old Interbases, even if this is the last time you go along with it.

    PLEASE :)

  • cincura.net
    June 6th, 2011 at 12:09

    OK. Try to convince me, that supporting InterBase is an idea worth doing.

  • SnowedUnder
    June 6th, 2011 at 12:55

    LOL, I wonder if I have EVER changed anyone’s mind about anything!

    People will use it, you will get the credit, kudos, kharma, fame and adulation! It’s entirely up to you how much of a warm satisfaction you’ll get from a couple of minutes making the change……. but I’ll think you’re wonderful :)

    Your project will become the most recommended solution for Interbase with .net, isn’t that great? I’d be thrilled to be so useful to the world if it were me!

  • cincura.net
    June 6th, 2011 at 15:49

    Still not convinced. :)

    InterBase is now different product. If they’re interested, I’m sure .NET provider project is opened to talk.

  • kk
    June 6th, 2011 at 16:23

    sorry if this is a trace related question but do you know what’s the most performance way to completly disable it (better if by app.config)? i never used it and with google i don’t find a specific question to it.
    thanks for your work!

  • SnowedUnder
    June 6th, 2011 at 16:31

    You could have made the change by now, LOL

    Where is this “.NET provider for InterBase” please – I can’t find such a thing? Is it one of the dead-ends listed on my thread on the forum?

  • cincura.net
    June 6th, 2011 at 16:41

    If you don’t configure any listener, the logging is virtually off.

  • cincura.net
    June 6th, 2011 at 16:42

    I don’t know. I’m not watching InterBase closely. But I’m sure, they have support, so you can ask there.

    BTW it’s not only about doing changes, but also maintaining these.

  • SnowedUnder
    June 7th, 2011 at 10:38

    I can’t find an Interbase .net provider project, which is why I’m here.

    I appreciate you have your reasons, but I’m not asking for on-going support, just a one simple addition of a few lines of code (already suggested) as an error trap around one problem line of code, which doesn’t hurt and makes your code stronger – and that’s it, I’ll go away :)

    The fix has been suggested by a couple of people who report that it works for them. It’s a couple of minutes of your time to make yourself very useful to many other people, that’s all.

    Cheers

    ( more comment at the forum )

  • Tom
    June 7th, 2011 at 10:58

    Hi Jiri, [It does not support select … from (select …) and this is heavily used in EF.] and bug in left join, I read in firebird-devel forum.
    I don’t need full EF support for Fb1.5. I create my OData service with Fb2.5 in dev. env. and trace Fb2.5 server statements. When I execute my service:
    1. http://localhost/mysvc/test.svc
    service return OData Entitys, trace monitoring is empty (no statement is executed).
    2. http://localhost/mysvc/test.svc/TABLE1
    service return data from TABLE1 and 1 statement is executed
    SELECT “Entity1″.”ID_VD” as “ID_VD”, “Entity1″.”NAME” as “NAME” FROM “TABLE1″ “Entity1″
    This statement can be executed with Fb1.5.
    Then I stop Fb2.5 and start Fb1.5 and try same service, but service always return “An error occurred while processing this request.”. I know EF and OData service have many futures i need simple select from table.
    I know Net Provider 2.6 and 2.6.5 (not EF) can be used with Fb1.5 OR NOT???

  • cincura.net
    June 7th, 2011 at 11:00

    You can use just .NET provider with any Firebird version.

  • Tom
    June 7th, 2011 at 11:06

    Is there a code in EF source that prevent use and raise exception when Fb<2.5 is use?

  • cincura.net
    June 7th, 2011 at 11:32

    No.

  • Tom
    June 7th, 2011 at 11:57

    ???
    With Fb1.5
    1. http://localhost/mysvc/test.svc
    service return OData Entitys OK
    2. http://localhost/mysvc/test.svc/TABLE1
    “An error occurred while processing this request.”.

    With Fb2.5 trace monitoring only 1 statement is executed. It’s simple select from table, no subselect no joins.
    same statement can be executed with Fb1.5 with IBExpert.

    I need only 2 functionality
    1. List all exposed tables. OK Working
    2. Fetch data from tables Not working
    Developing with Fb2.5, in production with Fb1.5

    Any hint what can be a problem? Any change in source and where I can make?

  • SnowedUnder
    June 7th, 2011 at 14:13

    Is that your final word then? You’re happy to be The Guy That Wouldn’t Make One Quick Change?

  • cincura.net
    June 7th, 2011 at 15:22

    Yes. I’ve already said my arguments. You have to see whole picture, not just your piece.

    BTW sources are available, so if you feel you could maintain the IB support, join the list.

  • SnowedUnder
    June 8th, 2011 at 10:46

    You haven’t done a great job of communicating your reasons why a two minute fix with no knock-on issues is too much to ask of you!

    I’ll have to copy your source code, CHANGE THAT ONE LINE, and upload it to sourceforge as a new project explaining exactly why I had to jump through hoops to get there…… and I’ll call it something like the “Jiri Cincura Is A **** IB Provider”.

    If that’s the legacy you want, so be it, it will look great for your prospective clients… remember the internet never forgets :)

  • cincura.net
    June 8th, 2011 at 10:49

    And don’t forget, you’ll have to test it with various IB versions, maintain it, …

  • SnowedUnder
    June 8th, 2011 at 12:45

    stuff that, no, it will just be on a basis of “Here it is, see if it works for you”.
    That’s all I ever wanted :)

  • Tom
    June 9th, 2011 at 09:18

    [Tom June 7th, 2011 at 11:57]
    Any hint what can be a problem? Any change in source and where I can make?

  • cincura.net
    June 9th, 2011 at 10:13

    Nope.

  • rungsant
    June 11th, 2011 at 11:13

    From Firebird 2.1.x Release Note Appendix B: International Character Sets show

    TIS620 TIS620_UNICODE (V.2.1) Thai character set, single byte. (Not known)

    My application cannot run when connectionString=”character set=TIS620″. But UTF8 is OK.

  • cincura.net
    June 11th, 2011 at 16:49

    This charset was never part of .NET provider (I don’t even know if .NET supports it), hence there’s nothing to fix.

Share your thoughts, leave a comment!