Skip to content

Commit

Permalink
Update connectionResiliency branch with the changes from dev branch (#…
Browse files Browse the repository at this point in the history
…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
  • Loading branch information
ulvii authored Mar 9, 2018
1 parent 06abd7f commit b20a75c
Show file tree
Hide file tree
Showing 67 changed files with 2,075 additions and 1,181 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ local.properties
.settings/
.gradle/
.loadpath
outdated-dependencies.txt
pom.xml.versionBackup

# External tool builders
.externalToolBuilders/
Expand Down
13 changes: 9 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,13 @@

language: java
jdk:
- oraclejdk8
- oraclejdk9

addons:
apt:
packages:
- oracle-java9-installer

services:
- docker

Expand All @@ -29,7 +34,7 @@ install:
- keytool -importkeystore -destkeystore clientcert.jks -deststorepass password -srckeystore identity.p12 -srcstoretype PKCS12 -srcstorepass password
- keytool -list -v -keystore clientcert.jks -storepass "password" > JavaKeyStore.txt
- cd ..
- mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V -Pbuild41
- mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V -Pbuild43
- mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V -Pbuild42

before_script:
Expand All @@ -39,6 +44,6 @@ before_script:
script:
- docker ps -a

##Test for JDBC Specification 41 & 42 and submit coverage report.
- mvn test -B -Pbuild41 jacoco:report && bash <(curl -s https://codecov.io/bash) -cF JDBC41
##Test for JDBC Specification 43 & 42 and submit coverage report.
- mvn test -B -Pbuild41 jacoco:report && bash <(curl -s https://codecov.io/bash) -cF JDBC43
- mvn test -B -Pbuild42 jacoco:report && bash <(curl -s https://codecov.io/bash) -cF JDBC42
32 changes: 32 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,38 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/)

## [6.4.0] Stable Release
### Added
- Support added for AAD Integrated Authentication with ADAL4J on Windows/Linux/Mac OS [#603](https://github.com/Microsoft/mssql-jdbc/pull/603)
- Enable Recover after MSDTC is restarted [#581](https://github.com/Microsoft/mssql-jdbc/pull/581)
- Added Version Update configuration rules to project [#541](https://github.com/Microsoft/mssql-jdbc/pull/541)
- JDK 9 Compatibility + JDBC 4.3 API support added to the driver [#601 (https://github.com/Microsoft/mssql-jdbc/pull/601)

### Fixed Issues
- Re-introduced Retry Logic for Prepared Statement Caching implementation and remove detect change context function [#618](https://github.com/Microsoft/mssql-jdbc/pull/618) and [#620](https://github.com/Microsoft/mssql-jdbc/pull/620)
- Fixes for SonarQube Reported issues [#599](https://github.com/Microsoft/mssql-jdbc/pull/599)
- Fixes for Random Assertion Errors [#597](https://github.com/Microsoft/mssql-jdbc/pull/597)

### Changed
- Updated Appveyor to use JDK9 building driver and running tests [#619](https://github.com/Microsoft/mssql-jdbc/pull/619)
- JDK 7 compilation support removed from the driver [#601](https://github.com/Microsoft/mssql-jdbc/pull/601)

## [6.3.6] Preview Release
### Added
- Added support for using database name as part of the key for handle cache [#561](https://github.com/Microsoft/mssql-jdbc/pull/561)
- Updated ADAL4J version to 1.3.0 and also added it into README file [#564](https://github.com/Microsoft/mssql-jdbc/pull/564)

### Fixed Issues
- Fixed issues with static loggers being set by every constructor invocation [#563](https://github.com/Microsoft/mssql-jdbc/pull/563)

## [6.3.5] Preview Release
### Added
- Added handle for Account Locked Exception 18486 during login in SQLServerConnection [#522](https://github.com/Microsoft/mssql-jdbc/pull/522)

### Fixed Issues
- Fixed the issues with Prepared Statement Metadata Caching implementation [#543](https://github.com/Microsoft/mssql-jdbc/pull/543)
- Fixed issues with static logger member in abstract class 'SQLServerClobBase' [#537](https://github.com/Microsoft/mssql-jdbc/pull/537)

## [6.3.4] Preview Release
### Added
- Added new ThreadGroup creation to prevent IllegalThreadStateException if the underlying ThreadGroup has been destroyed. [#474](https://github.com/Microsoft/mssql-jdbc/pull/474)
Expand Down
44 changes: 33 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,19 +36,19 @@ What's coming next? We will look into adding a more comprehensive set of tests,

## Build
### Prerequisites
* Java 8
* Java 9
* [Maven](http://maven.apache.org/download.cgi)
* An instance of SQL Server or Azure SQL Database that you can connect to.

### Build the JAR files
Maven builds automatically trigger a set of verification tests to run. For these tests to pass, you will first need to add an environment variable in your system called `mssql_jdbc_test_connection_properties` to provide the [correct connection properties](https://msdn.microsoft.com/en-us/library/ms378428(v=sql.110).aspx) for your SQL Server or Azure SQL Database instance.

To build the jar files, you must use Java 8 with Maven. You can choose to build a JDBC 4.1 compliant jar file (for use with JRE 7) and/or a JDBC 4.2 compliant jar file (for use with JRE 8).
To build the jar files, you must use Java 9 with Maven. You can choose to build a JDBC 4.3 compliant jar file (for use with JRE 9) and/or a JDBC 4.2 compliant jar file (for use with JRE 8).

* Maven:
1. If you have not already done so, add the environment variable `mssql_jdbc_test_connection_properties` in your system with the connection properties for your SQL Server or SQL DB instance.
2. Run one of the commands below to build a JDBC 4.1 compliant jar or JDBC 4.2 compliant jar in the \target directory.
* Run `mvn install -Pbuild41`. This creates JDBC 4.1 compliant jar in \target directory
2. Run one of the commands below to build a JDBC 4.3 compliant jar or JDBC 4.2 compliant jar in the \target directory.
* Run `mvn install -Pbuild43`. This creates JDBC 4.3 compliant jar in \target directory
* Run `mvn install -Pbuild42`. This creates JDBC 4.2 compliant jar in \target directory

**NOTE**: Beginning release v6.1.7, we will no longer be maintaining the existing [Gradle build script](build.gradle) and it will be left in the repository for reference. Please refer to issue [#62](https://github.com/Microsoft/mssql-jdbc/issues/62) for this decision.
Expand Down Expand Up @@ -80,7 +80,7 @@ We're now on the Maven Central Repository. Add the following to your POM file to
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.2.2.jre8</version>
<version>6.4.0.jre9</version>
</dependency>
```
The driver can be downloaded from the [Microsoft Download Center](https://go.microsoft.com/fwlink/?linkid=852460).
Expand All @@ -90,7 +90,7 @@ To get the latest preview version of the driver, add the following to your POM f
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.3.4.jre8-preview</version>
<version>6.3.6.jre8-preview</version>
</dependency>
```

Expand All @@ -100,8 +100,8 @@ To get the latest preview version of the driver, add the following to your POM f
This project has following dependencies:

Compile Time:
- `azure-keyvault` : Azure Key Vault Provider for Always Encrypted feature (optional)
- `adal4j` : Azure ActiveDirectory Library for Java for Azure Active Directory Authentication feature (optional)
- `azure-keyvault` : Azure Key Vault Provider for Always Encrypted Azure Key Vault feature (optional)
- `adal4j` : Azure ActiveDirectory Library for Java for Azure Active Directory Authentication feature and Azure Key Vault feature (optional)

Test Time:
- `junit:jar` : For Unit Test cases.
Expand All @@ -115,15 +115,37 @@ mvn dependency:tree
### Azure Key Vault and Azure Active Directory Authentication Dependencies
Projects that require either of the two features need to explicitly declare the dependency in their pom file.

***For Example:*** If you are using *Azure Key Vault feature* then you need to redeclare *azure-keyvault* dependency in your project's pom file. Please see the following snippet:
***For Example:*** If you are using *Azure Active Directory Authentication feature* then you need to redeclare *adal4j* dependency in your project's pom file. Please see the following snippet:
```xml
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.3.4.jre8-preview</version>
<version>6.4.0.jre9</version>
<scope>compile</scope>
</dependency>

<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>adal4j</artifactId>
<version>1.4.0</version>
</dependency>
```

***For Example:*** If you are using *Azure Key Vault feature* then you need to redeclare *azure-keyvault* dependency and *adal4j* dependency in your project's pom file. Please see the following snippet:
```xml
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.4.0.jre9</version>
<scope>compile</scope>
</dependency>

<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>adal4j</artifactId>
<version>1.4.0</version>
</dependency>

<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-keyvault</artifactId>
Expand All @@ -138,7 +160,7 @@ We love contributions from the community. To help improve the quality of our co
Thank you!

## Guidelines for Reporting Issues
We appreciate you taking the time to test the driver, provide feedback and report any issues. It would be extremely helpful if you:
We appreciate you taking the time to test the driver, provide feedback and report any issues. It would be extremely helpful if you:

- Report each issue as a new issue (but check first if it's already been reported)
- Try to be detailed in your report. Useful information for good bug reports include:
Expand Down
17 changes: 10 additions & 7 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
version: '{build}'

init:
- cmd: net start MSSQL$%SQL_Instance%

environment:
mssql_jdbc_test_connection_properties: jdbc:sqlserver://localhost:1433;instanceName=SQL2016;databaseName=master;username=sa;password=Password12!;
JAVA_HOME: C:\Program Files\Java\jdk9
mssql_jdbc_test_connection_properties: jdbc:sqlserver://localhost:1433;instanceName=%SQL_Instance%;databaseName=master;username=sa;password=Password12!;

matrix:
- JAVA_HOME: C:\Program Files\Java\jdk1.8.0
- SQL_Instance: SQL2008R2SP2
- SQL_Instance: SQL2016

services:
- mssql2016

install:
- ps: Write-Host 'Installing JCE with powershell'
- ps: cd AppVeyorJCE
Expand All @@ -29,9 +32,9 @@ build_script:
- keytool -importkeystore -srckeystore cert.pfx -srcstoretype pkcs12 -destkeystore clientcert.jks -deststoretype JKS -srcstorepass password -deststorepass password
- keytool -list -v -keystore clientcert.jks -storepass "password" > JavaKeyStore.txt
- cd..
- mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V -Pbuild41
- mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V -Pbuild43
- mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V -Pbuild42

test_script:
- mvn test -B -Pbuild41
- mvn test -B -Pbuild43
- mvn test -B -Pbuild42
26 changes: 26 additions & 0 deletions maven-version-rules.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<ruleset xmlns="http://mojo.codehaus.org/versions-maven-plugin/rule/2.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" comparisonMethod="maven" xsi:schemaLocation="http://mojo.codehaus.org/versions-maven-plugin/rule/2.0.0 http://mojo.codehaus.org/versions-maven-plugin/xsd/rule-2.0.0.xsd">
<ignoreVersions>
<!-- Ignore Alpha's, Beta's, release candidates and milestones -->
<ignoreVersion type="regex">(?i).*Alpha(?:-?\d+)?</ignoreVersion>
<ignoreVersion type="regex">(?i).*Beta(?:-?\d+)?</ignoreVersion>
<ignoreVersion type="regex">(?i).*-B(?:-?\d+)?</ignoreVersion>
<ignoreVersion type="regex">(?i).*RC(?:-?\d+)?</ignoreVersion>
<ignoreVersion type="regex">(?i).*EA(?:-?\d+)?</ignoreVersion>
<ignoreVersion type="regex">(?i).*SNAPSHOT(?:-?\d+)?</ignoreVersion>
<!-- Sometimes Milestone releases are fair enough for testing libs like JUnit-->
<ignoreVersion type="regex">(?i).*M(?:-?\d+)?</ignoreVersion>
</ignoreVersions>

<rules>
<!-- One can add different rules in order to exclude specific version from automatic updates. -->
<!-- Testing... Update groupId, artifact id and appropriate version in order to exclude from versioning plugin
<rule groupId="com.microsoft.azure" artifactId="adal4j">
<ignoreVersions>
<ignoreVersion>1.3.0</ignoreVersion>
</ignoreVersions>
</rule>
-->
</rules>

</ruleset>
48 changes: 28 additions & 20 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>6.3.5-SNAPSHOT.${jreVersion}-preview</version>

<version>6.5.0-SNAPSHOT.${jreVersion}-preview</version>
<packaging>jar</packaging>

<name>Microsoft JDBC Driver for SQL Server</name>
Expand Down Expand Up @@ -55,7 +55,7 @@
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>adal4j</artifactId>
<version>1.2.0</version>
<version>1.4.0</version>
<optional>true</optional>
</dependency>

Expand Down Expand Up @@ -118,7 +118,7 @@
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>2.6.1</version>
<version>2.7.4</version>
<scope>test</scope>
</dependency>
<dependency>
Expand All @@ -139,10 +139,10 @@

<profiles>
<profile>
<id>build41</id>
<id>build42</id>

<properties>
<jreVersion>jre7</jreVersion>
<jreVersion>jre8</jreVersion>
</properties>

<build>
Expand All @@ -152,10 +152,10 @@
<version>3.6.0</version>
<configuration>
<excludes>
<exclude>**/com/microsoft/sqlserver/jdbc/SQLServerJdbc42.java</exclude>
<exclude>**/com/microsoft/sqlserver/jdbc/SQLServerJdbc43.java</exclude>
</excludes>
<source>1.7</source>
<target>1.7</target>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
Expand All @@ -167,21 +167,19 @@
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
</archive>
</configuration>
</plugin>

</plugin>
</plugins>
</build>
</profile>

<profile>
<id>build42</id>

<id>build43</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>

<properties>
<jreVersion>jre8</jreVersion>
<jreVersion>jre9</jreVersion>
</properties>

<build>
Expand All @@ -191,10 +189,10 @@
<version>3.6.0</version>
<configuration>
<excludes>
<exclude>**/com/microsoft/sqlserver/jdbc/SQLServerJdbc41.java</exclude>
<exclude>**/com/microsoft/sqlserver/jdbc/SQLServerJdbc42.java</exclude>
</excludes>
<source>1.8</source>
<target>1.8</target>
<source>9</source>
<target>9</target>
</configuration>
</plugin>
<plugin>
Expand Down Expand Up @@ -279,7 +277,7 @@
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>3.2.0</version>
<version>3.3.0</version>
<extensions>true</extensions>
<configuration>
<instructions>
Expand All @@ -301,7 +299,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.4</version>
<version>3.0.0-M1</version>

<configuration>
<failOnError>true</failOnError>
Expand Down Expand Up @@ -336,6 +334,16 @@
</dependency>
</dependencies>
</plugin>

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<inherited>true</inherited>
<configuration>
<outputFile>outdated-dependencies.txt</outputFile>
<rulesUri>file:///${session.executionRootDirectory}/maven-version-rules.xml</rulesUri>
</configuration>
</plugin>

</plugins>
</build>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,10 @@ final class AuthenticationJNI extends SSPIAuthentication {
static int GetMaxSSPIBlobSize() {
return sspiBlobMaxlen;
}

static boolean isDllLoaded() {
return enabled;
}

static {
UnsatisfiedLinkError temp = null;
Expand Down
Loading

0 comments on commit b20a75c

Please sign in to comment.