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

Merge dev to master for 6.3.4-preview release #529

Merged
merged 38 commits into from
Oct 19, 2017
Merged

Merge dev to master for 6.3.4-preview release #529

merged 38 commits into from
Oct 19, 2017

Conversation

ulvii
Copy link
Contributor

@ulvii ulvii commented Oct 19, 2017

No description provided.

mnhubspot and others added 30 commits September 1, 2017 16:50
Running a query that uses a timer can cause an
IllegalThreadStateException if the underlying ThreadGroup has been
destroyed
Forgot to add AtomicReference
Replace manual array copying with System.arraycopy().
Calling toString() on a String object is redundant
Replace bare literals with magic constants. For example:

`cal.set(1, 1, 577738, 0, 0, 0);`

becomes

`cal.set(1, Calendar.FEBRUARY, 577738, 0, 0, 0);`
Updated docker image tag for mssql-server-linux
Updating docker run command as well.
…m-names

recognize CallableStatement parameter names with leading '@'
cheenamalhotra and others added 8 commits October 10, 2017 11:01
Try with resources implementation in JUnit FW - Part 1
Fix creating SQLServerDataTable being O(n^2) issue
Query with timer can throw IllegalThreadStateException - This PR makes sure the ThreadGroup is not destroyed before creating a new timer thread.
* 6.3.4-preview release
@codecov-io
Copy link

codecov-io commented Oct 19, 2017

Codecov Report

Merging #529 into master will increase coverage by 0.17%.
The diff coverage is 64.7%.

Impacted file tree graph

@@             Coverage Diff              @@
##             master     #529      +/-   ##
============================================
+ Coverage     46.56%   46.74%   +0.17%     
- Complexity     2216     2226      +10     
============================================
  Files           108      108              
  Lines         25312    25308       -4     
  Branches       4181     4175       -6     
============================================
+ Hits          11786    11829      +43     
+ Misses        11498    11452      -46     
+ Partials       2028     2027       -1
Flag Coverage Δ Complexity Δ
#JDBC41 46.6% <64.7%> (+0.33%) 2217 <3> (+14) ⬆️
#JDBC42 46.46% <64.7%> (+0.08%) 2219 <3> (+9) ⬆️
Impacted Files Coverage Δ Complexity Δ
...a/com/microsoft/sqlserver/jdbc/SQLJdbcVersion.java 0% <ø> (ø) 0 <0> (ø) ⬇️
...rc/main/java/com/microsoft/sqlserver/jdbc/DDC.java 44.92% <0%> (+0.55%) 105 <0> (+1) ⬆️
...soft/sqlserver/jdbc/SQLServerBulkCopy42Helper.java 0% <0%> (ø) 0 <0> (ø) ⬇️
...oft/sqlserver/jdbc/SQLServerParameterMetaData.java 24.35% <0%> (ø) 31 <0> (ø) ⬇️
...c/main/java/com/microsoft/sqlserver/jdbc/Util.java 61.86% <100%> (+2.68%) 89 <2> (+1) ⬆️
...om/microsoft/sqlserver/jdbc/SQLServerBulkCopy.java 52.77% <100%> (+0.25%) 240 <0> (ø) ⬇️
...rc/main/java/com/microsoft/sqlserver/jdbc/TVP.java 45.22% <33.33%> (+0.03%) 27 <0> (ø) ⬇️
...oft/sqlserver/jdbc/SQLServerPreparedStatement.java 51.57% <50%> (ø) 164 <0> (-1) ⬇️
.../microsoft/sqlserver/jdbc/SQLServerConnection.java 45.98% <50%> (-0.04%) 277 <0> (ø)
...m/microsoft/sqlserver/jdbc/SQLServerDataTable.java 58.73% <75%> (+0.66%) 23 <1> (ø) ⬇️
... and 15 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1e254e3...94ae4bf. Read the comment docs.

@ulvii ulvii requested a review from xiangyushawn October 19, 2017 18:48
@ulvii ulvii merged commit 16a76c7 into master Oct 19, 2017
ulvii added a commit that referenced this pull request Mar 9, 2018
…643)

* replace [ with '

* use PreparedStatement to populate temp table #fkeys_results

* change String to Int for some columns

* refactor a bit

* Add connection properties for specifying custom TrustManager (#74)

* Add connection properties to specify a custom TrustManager

Adds two new connection properties that can be used to specify a custom
TrustManager implementation:

trustManagerClass - Class name of the custom TrustManager

trustManagerConstructorArg - Optional argument to pass to the constructor
constructor of the custom TrustManager.

If encryption is enabled and the trustManagerClass property is specified,
it will be retrieved via Class.forName(...).

If the optional property trustManagerConstructorArg is specified, then a
constructor will be retrieved via getDeclaredConstructors(String.class).
The TrustManager will then be instantiated by specified the optional
argument as a parameter.

If the optional property trustManagerConstructorArg is not specfied,
then the default no argument constructor of the class will be retrieved
and instantiated.

* Adding a few simple test to verify the newly added connection properties

* Rename custom trustmanager test package name

Previous package name used camel case. Corrects naming to be lower case.

* Add missing newlines to trustmanager test classes

* Refactor references to trust managers in tests

* Refactor whitespace and unneeded extends Object

* Add resource cleanup to trust manager tests

* Refactor failure handling for trust manager test

* Rename tmClazz to tmClass

* Add new trust manager properties to SQLServerDataSource

* Reword comment

* Format custom trustmanager changes with auto formatter

* recognize CallableStatement parameter names with leading '@'

* Revert "removing javax.xml.bind package dependency "

* Revert "Removing deprecated APIs in java 9"

* Replace manual array copy

Replace manual array copying with System.arraycopy().

* Remove redundant String.toString()

Calling toString() on a String object is redundant

* Replace bare literals

Replace bare literals with magic constants. For example:

`cal.set(1, 1, 577738, 0, 0, 0);`

becomes

`cal.set(1, Calendar.FEBRUARY, 577738, 0, 0, 0);`

* release process PR

* Revert "Remove redundant if/else statements"

* remove PR 470 from changelist, and modify the readme file

* remove preview from pom

* make urls work

* removing java.xml.bind dependency

* remove developer name from POM file

* removed dependency of java.xml.bind and updated pom file with latest javadoc pluggin.

* disabled appveyor and updated travic to use java 9

* Fixed NoSuchMethodError when compiling with Java 9 but running on java 8 and lower.

* add support for JDBC 4.3 APIs and throw unsupported exceptions for those not implemented yet. Also updated the jdbc file to include building jre8 jar.

* fixed the javadoc warnings.

* update SQLServerJdbc41 to throw unsupportedError for 4.3 APIs

* cleanup tables after test

* more cleaning of tables and procedures

* add snapshot to pom.xml

* Make it 6.3.4

* Implement checkDuplicateColumnName to check duplicate columns

* Fix for EnablePrepareOnFirstPreparedStatementCall with statement pooling
turned off.

* Revert "Implement checkDuplicateColumnName to check duplicate columns"

This reverts commit e77a046.

* Revert "Revert "Implement checkDuplicateColumnName to check duplicate columns""

This reverts commit 8f69956.

* Apply same logic for TVP

* works for AAD integrated on driver side changes

* update changelog and readme for dev branch

* use try with resources

* add another try-with-resource

* drop a not needed method

* try-with-resources implementation commit 1

* Update .travis.yml

Updated docker image tag for mssql-server-linux

* Updating travis build script to use :2017-latest tag for SQL Server docker image

* Update .travis.yml

Updating docker run command as well.

* Update docker run command as well

* Fix AESetup issue with dropCEK

* remove hardcoded username from exception message

* try-with-resources implementation commit 2

* avoid creating connection for termination

* remove null check and change Set object name

* tweak to preserve original parameter name for exception message

* Check for "Account Locked" SQL Exception 18486 while connecitng to SQL Server 2008/2012 and throw Exception

* Updated comment for Locked User Account in SQLServerConnection.java

* Refactoring the logic for checking duplicate column into Util class and adding a test case for this

* Remove explicit interface reference

* Modified bvtTests to be able to test resultSet closing explicitly.

* updates gradle dependencies

* 6.3.4 release (#528)

* 6.3.4-preview release

* Merge dev to master for 6.3.4-preview release (#529)

* TimeoutTimer: Check for destroyed TheadGroup

Running a query that uses a timer can cause an
IllegalThreadStateException if the underlying ThreadGroup has been
destroyed

* TimeoutTimer: Forgot reference

Forgot to add AtomicReference

* recognize CallableStatement parameter names with leading '@'

* Replace manual array copy

Replace manual array copying with System.arraycopy().

* Remove redundant String.toString()

Calling toString() on a String object is redundant

* Replace bare literals

Replace bare literals with magic constants. For example:

`cal.set(1, 1, 577738, 0, 0, 0);`

becomes

`cal.set(1, Calendar.FEBRUARY, 577738, 0, 0, 0);`

* cleanup tables after test

* more cleaning of tables and procedures

* Implement checkDuplicateColumnName to check duplicate columns

* Revert "Implement checkDuplicateColumnName to check duplicate columns"

This reverts commit e77a046.

* Revert "Revert "Implement checkDuplicateColumnName to check duplicate columns""

This reverts commit 8f69956.

* Apply same logic for TVP

* use try with resources

* add another try-with-resource

* drop a not needed method

* try-with-resources implementation commit 1

* Update .travis.yml

Updated docker image tag for mssql-server-linux

* Update .travis.yml

Updating docker run command as well.

* Fix AESetup issue with dropCEK

* try-with-resources implementation commit 2

* avoid creating connection for termination

* remove null check and change Set object name

* tweak to preserve original parameter name for exception message

* Refactoring the logic for checking duplicate column into Util class and adding a test case for this

* Remove explicit interface reference

* Modified bvtTests to be able to test resultSet closing explicitly.

* 6.3.4 release (#528)

* 6.3.4-preview release

* Add 6.3.5-SNAPSHOT to pom file (#530)

* add snapshot to pom file

* cleanup

* remove error message when running AAD integrated on non-windows OS

* read user name from kerberos TGT client name

* add error message when Future's outcome has no AuthenticationResult but exception

* revise the way that pom file uses version number

* add -preview

* Fix for static logger member in abstract class 'SQLServerClobBase'

* fix handle not fund bug for metadata caching

* fix tests

* fix failures in requesthandling test

* Version Update Configuration Rules.

* Added `outdated-dependencies.txt` in .gitignore

* remove prepStmtHandle = -1 which disables metadata caching, and added fix for BatchTriggerTest

* remove fix for BatchTriggerTest, it breaks PreparedStatementTest

* fix hasPreparedStatementHandle()

* add the fix for batch trigger

* fix "handle is not valid" error. If context changed once, metadata caching is disabled on the connection

* clear cached prepared statement handle when pooled connection is removed

* merge the fix of batch trigger

* change back the test to catch BatchUpdateException exception

* disable metadata caching after switching database on connection directly

* process all batch first, then throw batch exception is there is one, otherwise throw sql server exception

* fix for 477

* add check for updatable resultsets.

* re-enable metadata caching after context change

* Updated Changelog for 6.3.5 Release

* Update pom.xml

Fixed minor issue that came during conflict resolution

* Updating POM File for next preview snapshot

* use preparedStatementHandleCache with database name

* retrieve db name without check connection

* Adding changes to logger implementation for avoiding logger lookup

* if password is null, it means AAD integrated auth

* update ADAL4J version to 1.3.0 and also add it into readme file based on request

* remove apache code for encoder and remove 4.1 compaitble jars

* updated dependency versions in pom file for jdbc 4.3 branch

* update samples in JDBC 4.3 branch + change the the junit.platform.version

* update sendTimeAsDateTime property to false.

* remove deprecated APIs

* Fix issue with rowDeleted() causing issues with testing

* Revert "Fix issue with rowDeleted() causing issues with testing"

This reverts commit 823f08e.

* Reverting PR 563, due to test failures

* 6.3.6 preview release

* add more catch blocks for new getDeclaredConstructor method.

* update Travis script with official support of jdk 9

* fix comment

* update readme file

* make recovery work after ms dtc restart

* use javax.security.auth.kerberos instead of sun.security.krb5.Credentials

* add log

* upadate comments and remove an unused import

* remove JNI functions for AAD integrated auth

* update the ADAL4J version to 1.4.0 in pom, this will break the compilation for now.

* Stress test changes - the static meodifier was causing concurrency issues during stress testing.

* use wrapper for sharding APIs

* fix another issue with Java 9 regarding bulkcopy connection check

* added another fix

* added cast to Buffer

* change Base64.getEncoder().encodeToString()

* Make sure the right wrapper is used for 4.2 and above.

* make SQLServerConnection43 throw SQLServerException for new Unsupported APIs

* update readme for AKV

* & is not allowed in error strings or parsing fails.

* update the dtc_xa_interface to use the correct flag for xa_start

* fixed random assertion error

race condition where 2 requestCompletes executed and the first one set the value to true. place test inside synchronized to fix

* spacing

* logger security fix

don't print keystoresecrets

* sonarQube fixes

* use dll authentication when DLL is loaded and windows is the operating system

* Added XML header

* Policheck issue fixes

* Updated as per review comments

* Update POM XML with SNAPSHOT Tag

* change back to retryLogic and change the default of prepared statement caching to false

* check if statementPooling is enabled for all retry logics

* Revert "update sendTimeAsDateTime property to false."

This reverts commit f1674af.

* add the setter and getter methods for disableStatementPooling property

* move same code in a function.

* update for jdk9

* prepare cache in setDisableStatementPooling()

* a small fix

* fixed the double insertion issue with retry

* fixed some review comments and updated test to use raiseError

* added a fix with connection property

* added unit Tests

* Revert back needsPrepare check in retryBasedOnFailedReuseOfCachedHandle

* Remove unwanted method parameter

* Update changelog and driver version for RTW release

* Minor Fix

* Minor change to update to jre9

* Added needsPrepare Check and removed error code 99586 check

* Added check for needsPrepare and removed 99586 check + Moved NeedsPrepare to class level declaration to avoid multi-threading issues.

* Moved 'needsPrepare' to local variable.

* Defaulting needsPrepare to true.

* Moving JDK9 support to added section

* Update SNAPSHOT for upcoming preview release.

* Fix conflicts

* Revert "Updating connectionResiliency branch with the changes from dev branch (#540)"

This reverts commit 06abd7f.

* Fix a few merging issues

* Disabling 2 more tests, Fixing the issues with Pooling cache size
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants