Jiri Cincura (JIRA | 27 Nov 12:50 2014

[FB-Tracker] Created: (DNET-578) For [VAR]CHAR constants use real length if there's none from facet

For [VAR]CHAR constants use real length if there's none from facet
------------------------------------------------------------------

                 Key: DNET-578
                 URL: http://tracker.firebirdsql.org/browse/DNET-578
             Project: .NET Data provider
          Issue Type: Improvement
          Components: Entity Framework support
    Affects Versions: 4.5.2.0
            Reporter: Jiri Cincura
            Assignee: Jiri Cincura
            Priority: Minor

--

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
Joseph Martinez | 25 Nov 23:48 2014

Special symbols getting converted to something else

I'm having a strange problem.  When special symbols are stored in my database, if the record is edited, it gets written back to the database as a different symbol or several symbols.  Here's an example:

I have a Firebird application that uses C++ and IBObjects.  If I enter or paste into a database field some text containing the Trademark symbol ™ (typed alt-0153.  Bytes are e2 84 a2), it shows correctly in the database, on the screen, etc.

Now, if I access the same database record using .NET, the Firebird .NET provider, and Entity Framework, and edit that record, even if I don't modify the field containing the trademark symbol, when I save the record, it writes the trademark symbol back as: â„¢ (bytes are c3 a2 e2 80 9e c2 a2).

Here is the code that I'm using:

PRODUCT p = db.PRODUCTS.FirstOrDefault<PRODUCT>(pp => pp.PRODBARCODE == ecp.PRODBARCODE && pp.STOREID == _storeid);
p.PRODWEBDIRTY = "F";
db.Entry(p).State = EntityState.Modified;
db.SaveChanges();

Note that PRODWEBDIRTY is not the field containing the trademark symbol.  I guess it's just writing back the entire record to the database, but with the special characters converted.

Why does it do this?  How can I prevent it?

-Joe
------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@...
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider
Pascal (JIRA | 24 Nov 10:34 2014

[FB-Tracker] Created: (DNET-577) The utilisation of parameters writes in the standard output so the performances are considerably descreased

The utilisation of parameters writes in the standard output so the performances are considerably descreased
-----------------------------------------------------------------------------------------------------------

                 Key: DNET-577
                 URL: http://tracker.firebirdsql.org/browse/DNET-577
             Project: .NET Data provider
          Issue Type: Bug
          Components: ADO.NET Provider
    Affects Versions: 4.5.2.0
         Environment: Client application runs on a Windows 7 64 bits with FirebirdSql.Data.FirebirdClient.dll
4.5.2.0 (also tested with 2.7.5.0 and there's the same issue).

Firebird 2.1.4.18393 (Win32) on a Windows Server 2003 SP2 64 bits.
            Reporter: Pascal
            Assignee: Jiri Cincura
            Priority: Blocker

To insert datas in a Firebird database, I use a FbCommand with parameters and transactions to be as quick as possible.
But the FbCommand writes in the standard ouput all values of all parameters. So when with anoter database
the job lasts one hour, with Firebird it lasts ten hours.

It's very important for me to get a fix and I can't go to production with this low performances.

The code is made to work with SQL Server, Oracle, MySQL, PostgreSQL and Firebird.

This is an example of code to reproduce:

       public void InsererEnregistrement(string nomTable)
        {
            const IsolationLevel isolationLevel = IsolationLevel.ReadUncommitted;
            const int nbreLigneTotal = 1000;

            var parametres = new List<string>();

            for (int i = 1; i <= 50; i++)
                parametres.Add(" <at> p" + i);

            var commande = String.Format("INSERT INTO {0} VALUES (" + parametres.Aggregate((a, b) => a + ", " + b) + ")", nomTable);

            using (var connexion = new FbConnection())
            {
                connexion.ConnectionString = ConnectionStringBuilder.ConnectionString;

                connexion.Open();

                using (var command = new FbCommand())
                {                  
                    command.Connection = connexion;
                    command.CommandText = commande;

                    DbTransaction transaction = connexion.BeginTransaction(isolationLevel);

                    command.Transaction = transaction;

                    for (int i = 1; i <= 25; i++)
                    {
                        var parametre = new FbParameter();
                        parametre.ParameterName = " <at> p" + i;
                        parametre.DbType = DbType.Int32;
                        command.Parameters.Add(parametre);
                    }

                    for (int i = 26; i <= 50; i++)
                    {
                        var parametre = new FbParameter();
                        parametre.ParameterName = " <at> p" + i;
                        parametre.DbType = DbType.String;
                        command.Parameters.Add(parametre);
                    }

                    command.Prepare();

                    for (int i = 0; i <= nbreLigneTotal; i++)
                    {
                        command.Parameters[0].Value = (i + 1) * 100000;
                        command.Parameters[1].Value = i;
                        command.Parameters[2].Value = 0;

                        for (int j = 4; j <= 25; j++)
                            command.Parameters[j - 1].Value = 1234567890;

                        for (int j = 26; j <= 50; j++)
                            command.Parameters[j - 1].Value = "01234657890123456789012345678901234567890123456789";

                        command.ExecuteNonQuery();

                        if ((i != 0) && ((i % 1000) == 0))
                        {
                            transaction.Commit();
                            if (i != nbreLigneTotal)
                            {
                                transaction = connexion.BeginTransaction(isolationLevel);
                                command.Transaction = transaction;
                            }
                        }
                    }
                }
            }
        }

And for each row inserted, I got this in the standard output :
FirebirdSql.Data.FirebirdClient Information: 0 : Command:
INSERT INTO SMR8_MODIF_C50T50L0100000 VALUES ( <at> p1,  <at> p2,  <at> p3,  <at> p4,  <at> p5,  <at> p6,  <at> p7,  <at> p8,  <at> p9,  <at> p10,  <at> p11,
 <at> p12,  <at> p13,  <at> p14,  <at> p15,  <at> p16,  <at> p17,  <at> p18,  <at> p19,  <at> p20,  <at> p21,  <at> p22,  <at> p23,  <at> p24,  <at> p25,  <at> p26,  <at> p27,  <at> p28,
 <at> p29,  <at> p30,  <at> p31,  <at> p32,  <at> p33,  <at> p34,  <at> p35,  <at> p36,  <at> p37,  <at> p38,  <at> p39,  <at> p40,  <at> p41,  <at> p42,  <at> p43,  <at> p44,  <at> p45,
 <at> p46,  <at> p47,  <at> p48,  <at> p49,  <at> p50)
Parameters:
Name: <at> p1	Type:Integer	Used Value:100000
Name: <at> p2	Type:Integer	Used Value:0
Name: <at> p3	Type:Integer	Used Value:0
Name: <at> p4	Type:Integer	Used Value:1234567890
Name: <at> p5	Type:Integer	Used Value:1234567890
Name: <at> p6	Type:Integer	Used Value:1234567890
Name: <at> p7	Type:Integer	Used Value:1234567890
Name: <at> p8	Type:Integer	Used Value:1234567890
Name: <at> p9	Type:Integer	Used Value:1234567890
Name: <at> p10	Type:Integer	Used Value:1234567890
Name: <at> p11	Type:Integer	Used Value:1234567890
Name: <at> p12	Type:Integer	Used Value:1234567890
Name: <at> p13	Type:Integer	Used Value:1234567890
Name: <at> p14	Type:Integer	Used Value:1234567890
Name: <at> p15	Type:Integer	Used Value:1234567890
Name: <at> p16	Type:Integer	Used Value:1234567890
Name: <at> p17	Type:Integer	Used Value:1234567890
Name: <at> p18	Type:Integer	Used Value:1234567890
Name: <at> p19	Type:Integer	Used Value:1234567890
Name: <at> p20	Type:Integer	Used Value:1234567890
Name: <at> p21	Type:Integer	Used Value:1234567890
Name: <at> p22	Type:Integer	Used Value:1234567890
Name: <at> p23	Type:Integer	Used Value:1234567890
Name: <at> p24	Type:Integer	Used Value:1234567890
Name: <at> p25	Type:Integer	Used Value:1234567890
Name: <at> p26	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p27	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p28	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p29	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p30	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p31	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p32	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p33	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p34	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p35	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p36	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p37	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p38	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p39	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p40	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p41	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p42	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p43	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p44	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p45	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p46	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p47	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p48	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p49	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789
Name: <at> p50	Type:VarChar	Used Value:01234657890123456789012345678901234567890123456789

If you think, it's important to continue to write parameters in the standard output, you can put in the setup
the bin/release dll without writing and the bin/debug dll with writing.
So the developpers can use the release or the debug version depending of their needs.

Regards,

--

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
Jiri Cincura (JIRA | 13 Nov 09:00 2014

[FB-Tracker] Created: (DNET-576) IPv6 support

IPv6 support
------------

                 Key: DNET-576
                 URL: http://tracker.firebirdsql.org/browse/DNET-576
             Project: .NET Data provider
          Issue Type: Task
          Components: ADO.NET Provider
    Affects Versions: 4.5.2.0
            Reporter: Jiri Cincura
            Assignee: Jiri Cincura
            Priority: Minor

--

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk
Jiri Cincura (JIRA | 11 Nov 15:03 2014

[FB-Tracker] Created: (DNET-575) ClearPool is not using NormalizedConnectionString

ClearPool is not using NormalizedConnectionString
-------------------------------------------------

                 Key: DNET-575
                 URL: http://tracker.firebirdsql.org/browse/DNET-575
             Project: .NET Data provider
          Issue Type: Bug
          Components: ADO.NET Provider
    Affects Versions: 4.5.2.0
            Reporter: Jiri Cincura
            Assignee: Jiri Cincura

--

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk
LtColRDSChauhan | 10 Nov 22:54 2014
Picon

Stored Procedure's Exception Not Thrown by Update of FbDataAdapter

Hello,

1.  For a batch update i'm asigning stored procedures to the insert / udpate / delete commands of FbDataAdapter object.

2.  The Update call of FbDataAdapter object, does not throw FB exception thrown by my stored procedure.
Instead, such rows are left unchanged while the rest are still updated.

Thanks and Regards,
Lt Col (Retd) Rajiv D.S. Chauhan
------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@...
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider
Jiří Činčura | 10 Nov 18:58 2014
Picon

ADO.NET provider 4.5.2.0

More info: http://blog.cincura.net/233487-ado-net-provider-4-5-2-0-for-firebird-is-ready/ .

-- 
Mgr. Jiří Činčura
Independent IT Specialist

------------------------------------------------------------------------------
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider
Jiri Cincura (JIRA | 10 Nov 18:07 2014

[FB-Tracker] Created: (DNET-574) Handle DbProviderFactories in FirebirdSql.Data.FirebirdClient NuGet

Handle DbProviderFactories in FirebirdSql.Data.FirebirdClient NuGet
-------------------------------------------------------------------

                 Key: DNET-574
                 URL: http://tracker.firebirdsql.org/browse/DNET-574
             Project: .NET Data provider
          Issue Type: Improvement
          Components: ADO.NET Provider, NuGet packages
    Affects Versions: 4.5.1.0
            Reporter: Jiri Cincura
            Assignee: Jiri Cincura

Handle DbProviderFactories in FirebirdSql.Data.FirebirdClient NuGet

--

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

------------------------------------------------------------------------------
Jiří Činčura | 6 Nov 14:06 2014
Picon

EF Migrations

Hi *,

Anybody here willing to give EF Migrations a try? I'm getting close to first implementation.

-- 
Mgr. Jiří Činčura
Independent IT Specialist

------------------------------------------------------------------------------
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider <at> lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider
Alfred Reinold Baudisch | 5 Nov 11:00 2014
Picon

FirebirdClient was not found excepction when in use with EF6

I made a small test application using Entity Framework 6.0 and FirebirdSql.Data.
FirebirdClient.dll v4.5.1.0 where I succesfully generated Entities from a Firebird database.

But when I try to do a database operation at runtime, I get this error:
An unhandled exception of type 'System.ArgumentException' occurred in EntityFramework.dll

Additional information: The ADO.NET provider with invariant name 'FirebirdSql.Data. FirebirdClient' is either not registered in the machine or application config file, or could not be loaded. See the inner exception for details.

I checked Process Explorer and the assemblies EntityFramework.Firebird and FirebirdSql.Data. FirebirdClient were loaded, but still the exception says a Firebird provider couldn't be found.

- I already uninstalled the provider from GAC.
- I tested with both .NET 4.0 (and the correct Firebird provider) as well .NET 4.5

Any ideas?

--
Best Regards,
Alfred Reinold Baudisch

Unity 3D and Corona SDK Games Developer
Skype: AlfredBaudisch
------------------------------------------------------------------------------
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@...
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider
Jiri Cincura (JIRA | 22 Oct 10:31 2014

[FB-Tracker] Created: (DNET-573) Do not check Position and Length on FbStreamingRestore

Do not check Position and Length on FbStreamingRestore
------------------------------------------------------

                 Key: DNET-573
                 URL: http://tracker.firebirdsql.org/browse/DNET-573
             Project: .NET Data provider
          Issue Type: Improvement
          Components: ADO.NET Provider
    Affects Versions: 4.5.1.0
            Reporter: Jiri Cincura
            Assignee: Jiri Cincura

Do not check Position and Length on FbStreamingRestore as the stream might be open ended. Just stop when EOF reached.

--

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

------------------------------------------------------------------------------
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://p.sf.net/sfu/Zoho

Gmane