Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Merge API #686

Merged
merged 89 commits into from
Aug 17, 2017
Merged

New Merge API #686

merged 89 commits into from
Aug 17, 2017

Conversation

MaceWindu
Copy link
Contributor

@MaceWindu MaceWindu commented May 27, 2017

DB2 iSeries/DB2 zOS not tested due to their public unavailability. Should work. Or not.

Fixes:

Other fixes:

  • DateTimeOffset with negative offset saved properly for Oracle's TIMESTAMP WITH TIME ZONE
  • Various issues with literals generation

Code tasks:

  • Providers: SQL Server
  • Providers: DB2 LUW
  • Providers: Informix
  • Providers: SAP HANA (v2)
  • Providers: Firebird 2.1-2.5
  • Providers: Firebird 3
  • Providers: Oracle
  • Providers: Sybase
  • Custom update for providers with "alternative update" (DB2, Oracle, Firebird, Informix, SAP HANA)
  • Generate aliases for source columns
  • Add tests for different data types (in progress)
  • Restore old API (remove Obsolete attribute)
  • Refactor API naming/structure
  • testing using DB2 zOS
  • testing using DB2 iSeries using Linq2DB4iSeries provider (needs collaboration with @RoyC-Retail-Assist)
  • add tests for new API methods
  • implement match using keys

Documentation tasks:

@@ -583,7 +583,7 @@ static ParameterAccessor GetParameter(IDataContext dataContext, SqlField field)

Query<int> ei;

var key = new { dataContextInfo.MappingSchema, dataContextInfo.ContextID };
var key = new { dataContextInfo.MappingSchema, dataContextInfo.ContextID, tableName, databaseName, schemaName };
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

example of incorrect query caching

@@ -3696,9 +3696,8 @@ internal void SetAliases()
{
objs.Add(expr, expr);
p.Name = GetAlias(p.Name, "p");
Parameters.Add(p);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

duplicate parameter fix

{
[TestFixture]
public class ConcurrencyCheckTests : TestBase
using System;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed line endings only

Conflicts:
	Data/Create Scripts/Firebird.sql
	Source/Data/DataConnectionExtensions.cs
	Source/DataProvider/DataProviderBase.cs
	Source/DataProvider/IDataProvider.cs
	Source/DataProvider/SapHana/SapHanaMappingSchema.cs
	Source/Linq/Query.cs
	Source/LinqToDB.csproj
	Tests/Linq/Tests.csproj
- finished test data preparation
- string literal generation fixes and tests
- trimming fixes
- fix some tests
@MaceWindu
Copy link
Contributor Author

This feature is ready for review once more.

@ili, tests for major types added (MergeTests.Types.cs)

Conflicts:
	Data/Create Scripts/SQLite.sql
	Source/Data/DataConnection.cs
	Source/DataProvider/BasicMerge.cs
	Source/DataProvider/DB2/DB2DataProvider.cs
	Source/DataProvider/DataProviderBase.cs
	Source/DataProvider/Firebird/FirebirdDataProvider.cs
	Source/DataProvider/IDataProvider.cs
	Source/DataProvider/Informix/InformixDataProvider.cs
	Source/DataProvider/Oracle/OracleDataProvider.cs
	Source/DataProvider/SqlServer/SqlServerDataProvider.cs
	Source/Linq/Builder/ContextParser.cs
	Source/Linq/Query.cs
	Source/LinqExtensions.cs
	Source/LinqToDB.csproj
	Tests/Linq/Samples/ConcurrencyCheckTests.cs
	Tests/Linq/Update/MergeTests.cs
@MaceWindu
Copy link
Contributor Author

Merged with master and added MergeAsync method with tests

@MaceWindu MaceWindu modified the milestones: 1.9.0, 1.10.0 Aug 16, 2017
@MaceWindu MaceWindu merged commit 1af71f1 into linq2db:master Aug 17, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

6 participants