[Firebird-net-provider] [FB-Tracker] Created: (DNET-264) BuildTpb() forgot too implement: IsolationLevel.Snapshot

2009-08-22 Thread Van den Wouwer Danny (JIRA)
BuildTpb() forgot too implement: IsolationLevel.Snapshot 
-

 Key: DNET-264
 URL: http://tracker.firebirdsql.org/browse/DNET-264
 Project: .NET Data provider
  Issue Type: Improvement
Reporter: Van den Wouwer Danny
Assignee: Jiri Cincura


Hi Jiri,

The private method BuildTpb() inside FbTransaction.cs doesn't check the new 
IsolationLevel.Snapshot

  // Summary:
   // Specifies the transaction locking behavior for the connection.
   public enum IsolationLevel
   {
   // Summary:
   // A different isolation level than the one specified is being used, 
but the
   // level cannot be determined.
   Unspecified = -1,
   //
   // Summary:
   // The pending changes from more highly isolated transactions cannot 
be overwritten.
   Chaos = 16,
   //
   // Summary:
   // A dirty read is possible, meaning that no shared locks are issued 
and no
   // exclusive locks are honored.
   ReadUncommitted = 256,
   //
   // Summary:
   // Shared locks are held while the data is being read to avoid dirty 
reads,
   // but the data can be changed before the end of the transaction, 
resulting
   // in non-repeatable reads or phantom data.
   ReadCommitted = 4096,
   //
   // Summary:
   // Locks are placed on all data that is used in a query, preventing 
other users
   // from updating the data. Prevents non-repeatable reads but phantom 
rows are
   // still possible.
   RepeatableRead = 65536,
   //
   // Summary:
   // A range lock is placed on the System.Data.DataSet, preventing 
other users
   // from updating or inserting rows into the dataset until the 
transaction is
   // complete.
   Serializable = 1048576,
   //
*// Summary:
   // Reduces blocking by storing a version of data that one 
application can read
   // while another is modifying the same data. Indicates that from one 
transaction
   // you cannot see changes made in other transactions, even if you 
requery.
   Snapshot = 16777216,
*}

And it seems that on other places this IsolationLevel.Snapshot is already 
introduced (FbConnectionInternal.cs, FbConnectionString.cs, fbMetaData.xml)

So isn't it better to mimic this Isolation better then just taking the default 
now (ReadCommitted, NoRecversion):
Shouldn't it be mapped on  FbTransactionBehavior.Concurrency?

Like this:

   private TransactionParameterBuffer BuildTpb()
   {
   FbTransactionOptions options = new FbTransactionOptions();
   options.WaitTimeout = null;
   options.TransactionBehavior = FbTransactionBehavior.Write;

   options.TransactionBehavior |= FbTransactionBehavior.Wait;

   /* Isolation level */
   switch (this.isolationLevel)
   {
   case IsolationLevel.Serializable:
   options.TransactionBehavior |= 
FbTransactionBehavior.Consistency;
   break;

   case IsolationLevel.RepeatableRead:
*case IsolationLevel.Snapshot:*
   options.TransactionBehavior |= 
FbTransactionBehavior.Concurrency;
   break;

   case IsolationLevel.ReadUncommitted:
   options.TransactionBehavior |= 
FbTransactionBehavior.ReadCommitted;
   options.TransactionBehavior |= 
FbTransactionBehavior.RecVersion;
   break;

   case IsolationLevel.ReadCommitted:
   default:
   options.TransactionBehavior |= 
FbTransactionBehavior.ReadCommitted;
   options.TransactionBehavior |= 
FbTransactionBehavior.NoRecVersion;
   break;
   }

   // just empty FbTransactionOptionsValues struct
   return this.BuildTpb(options);
   }


-- 
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



--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
___
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider


[Firebird-net-provider] [FB-Tracker] Created: (DNET-160) Global Temporary Table isn't redirected

2008-03-28 Thread Van den Wouwer Danny (JIRA)
Global Temporary Table isn't redirected 


 Key: DNET-160
 URL: http://tracker.firebirdsql.org/browse/DNET-160
 Project: .NET Data provider
  Issue Type: Bug
Affects Versions: 2.1.0 RC 2
 Environment: Windows XP SP2
Reporter: Van den Wouwer Danny
Assignee: Jiri Cincura


If a temporary global table is being used, I expected that the tmp-files files 
for this table are created in the folder specified by:
# 
# Temporary directories
#
# Provide ';'-separated trees list, where temporary files are stored.
# Relative paths are treated relative to RootDirectory entry
# (see above). Default value is determined using FIREBIRD_TMP,
# TEMP or TMP environment options. Once the first specified
# directory has no available space, the engine will switch to the
# next one, and so on.
#
# E.g.:
# TempDirectories = c:\temp
# or
# TempDirectories = c:\temp;d:\temp
#
# Type: string (special format)
#
TempDirectories = C:\TMP_FIREBIRD

But it isn't, the tmp-file is created in the default temporary directory of 
windows.

Is this by design?
I expected to redirect all tempoary files to another disk to speed up.

-- 
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



-
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
___
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider