Commit Graph

134 Commits

Author SHA1 Message Date
David Shiflet
f99061866c Upgrade SMO to 150 preview (#701)
* Switch to the unified SMO NuGet so all binaries are strong named and signed.

* use one AssemblyLoader instance for all loads

* Revert "use one AssemblyLoader instance for all loads"

This reverts commit 48c59ffd5c57152de281c87acdbcad7ddf7ab760.

* Stop creating multiple AssemblyLoadContext objects during composition, per https://github.com/dotnet/coreclr/issues/19632

* restore high entropyva property

* Improve the comment

* Update SMO to 150 and fix scripting for objects with a single quote in their name.

* restore newtonsoft reference
2018-10-03 18:33:40 -04:00
Karl Burtram
d31ce985ce Check that connection is open in ReliableConnectionHelperTest (#694) 2018-09-25 14:23:29 -07:00
ranasaria
09652cccd1 Enhanced Logging for sqltoolsservice (#695)
This change modifies the logging framework within sqltoolservice.
Moves away from custom Logger object to start using .Net tracing framework. It supports for the static Trace and TraceSource way of logging. For all new code it is recommend that we log the log messages using the existing static Logger class, while the code changes will continue to route the older Trace.Write* calls from the process to same log listeners (and thus the log targets) as used by the Logger class. Thus tracing in SMO code that uses Trace.Write* methods gets routed to the same file as the messages from rest of SQLTools Service code.
Make changes to start using .Net Frameworks codebase for all logging to unify our logging story.
Allows parameter to set tracingLevel filters that controls what kinds of message make it to the log file.
Allows a parameter to set a specific log file name so if these gets set by external code (the UI code using the tools service for example) then the external code is aware of the current log file in use.
Adding unittests to test out the existing and improved logging capabilities.


Sequences of checkins in development branch:
* Saving v1 of logging to prepare for code review. Minor cleanup and some end to end testing still remains
* Removing local launchSettings.json files
* added support for lazy listener to sqltoolsloglistener and removed incorrect changes to comments across files in previous checkin
* Converting time to local time when writing entries to the log
* move the hosting.v2 to new .net based logging code
* removing *.dgml files and addding them to .gitignore
* fixing typo of defaultTraceSource
* Addressing pull request feedback
* Adding a test to verify logging from SMO codebase
* propogating changes to v1 sqltools.hosting commandoptions.cs to the v2 version
* Fixing comments on start and stop callstack methods and whitespaces
* Commenting a test that got uncommented by mistake
* addding .gitattributes file as .sql file was observed to be misconstrued as a binary file
2018-09-24 23:55:59 -07:00
Karl Burtram
066be2f46f Revert "Switch to the unified SMO NuGet" (#686)
* Revert "fixed perf tests and added more scenarios (#683)"

This reverts commit aa2b30f486.

* Revert "Switch to the unified SMO NuGet so all binaries are strong named and signed. (#682)"

This reverts commit 69961992bb.
2018-09-04 11:01:44 -07:00
David Shiflet
69961992bb Switch to the unified SMO NuGet so all binaries are strong named and signed. (#682) 2018-08-20 08:27:52 -04:00
David Shiflet
5cdab53da8 Upgrade SMO packages to fix issue with scripting tables (#678)
* Upgrade SMO packages to fix issue with scripting tables when Script Dependencies is true on the script options.

* use linux style import with case matching file name
2018-08-09 08:11:18 -04:00
Madeline MacDonald
4b9807f0cf Add ability to create sessions from templates, and list existing sessions (#671)
* Initial changes to connect to existing sessions

* Creating new profiler sessions

* Some session template changes

* Fixing errors

* Cleaning up comments, string constants, and formatting

* Removing commented code
2018-08-02 12:50:26 -07:00
Karl Burtram
38cf5414ce Add IncludePassword parameter to Get Connection String request (#670)
* Add IncludePassword flag to get connection string method

* Override connection application name

* Fix typo

* Fix test break

* Use ****** as password placeholder
2018-08-01 15:16:01 -04:00
David Shiflet
0b4228a7d9 Update Sql Management Objects to latest version (#666) 2018-07-27 17:25:16 -04:00
Aditya Bist
f293a54af7 Multiple batch execution time (#664)
* fixed bug where execution time was wrong for multiple batches

* fixed bug where multiple execution would show wrong execution time

* simplified logic
2018-07-25 16:45:26 -07:00
Karl Burtram
7c96ceb501 Get Connection String request handler (#665) 2018-07-25 15:03:00 -04:00
Karl Burtram
704b25f082 Add Get Alerts and Get Operators handlers (#648)
* Stage changes

* stage changes 2

* WIP 3

* Add Get Alerts and Get Operators handlers

* Add Get Proxy request handler
2018-06-28 21:12:10 -07:00
Karl Burtram
c6906c3b66 Add Get Schedules request handler (#646) 2018-06-27 08:25:19 -07:00
Karl Burtram
539d579a9b Add Agent Job Defaults request handler (#644)
* Add Agent Job Defaults request handler

* Fix a couple bugs
2018-06-26 13:57:47 -07:00
Karl Burtram
29fb715ad5 Add initial schedule request handlers (#638) 2018-06-18 10:18:23 -07:00
Karl Burtram
d2cc376b87 Agent Proxy and Credential request handlers (#637)
* Agent Proxy account WIP

* Fixup Credential create\update\delete handlers

* Use current user for test credential

* Cleanup and delete code

* Convert tabs to spaces
2018-06-14 11:55:38 -07:00
Madeline MacDonald
f53e532225 Adding pausing functionality for the profiler (#634)
* Dropping profiler session on stop request

* Changes to IXEventSession to simplify dropping sessions

* Stop sessions instead of dropping, disable flaky tests

* Initial framework for profiler pause requests

* Restructuring profiler session monitoring

* Fixes to session monitor

* Testing for pause functionality

* Fixing comments from PR

* Changes to testing

* Commenting out flaky test

* Deleting leftover testing code
2018-06-13 17:55:01 -07:00
Karl Burtram
aff0f1afae Drop job step and Create\Update alert handlers (#636)
* Add Delete Job Step implementation

* Update create\update agent alert handlers to use execution handler

* Cleanup create/update/delete operator request handlers
2018-06-13 17:49:11 -07:00
Karl Burtram
8dda34c95a Add Agent Job and Job Step request handlers (#635)
* Stage changes

* Fix update job request handler

* WIP

* Additional agent handler updates

* Setup agent job step create test

* Fix Step update handler
2018-06-13 10:02:25 -07:00
Karl Burtram
7c1f78a678 Update Agent contracts to match SQL Ops definitons (#633)
* WIP 2

* Update contracts to match SQL Ops definitons
2018-06-11 16:32:46 -07:00
Karl Burtram
372ca0cbe8 Agent configuration support classes (WIP) (#632)
* Additional SQL Agent config classes (WIP)

* Fix build breaks

* Clean up job step code

* Add VS Code build files

* Move changes to other machine

* More of the action execution classes

* More execution processing refactors

* More refactoring

* Disable tests for WIP merge

* Fix break on Release config

* Stage changes to other machine.
2018-06-07 12:08:24 -07:00
Madeline MacDonald
35b19320d4 Stopping sessions when handling stop requests (#627)
* Dropping profiler session on stop request

* Changes to IXEventSession to simplify dropping sessions

* Stop sessions instead of dropping, disable flaky tests
2018-06-05 13:48:55 -07:00
Karl Burtram
4f214f43e9 SQL Agent configuration for Operators, Alerts and Proxies (WIP) (#621)
* Initial non-refactored SQL Agent alert classes (WIP)

* Move agent classes into subdirectories

* Refactor the agent config code a bit more

* Add more implementation for handlers

* Add more code to the create alert handler

* Clean up agent alert class

* Clean up alert methods a bit

* Initial Operator contracts

* Additonal SQL Agent config changes

* More Proxy config cleanup

* Cleanup AgentProxy class

* Additional cleanups

* Run SRGen

* Add security service to create credential objects
2018-05-30 08:58:02 -07:00
Alan Ren
45ca7fc071 SMO Refresh with SSMS 17.7 binaries (#616) 2018-05-08 13:35:58 -07:00
Cory Rivera
dca33d768d Bump System.Data.SqlClient package version used in SqlTools projects. (#608) 2018-04-30 16:57:07 -07:00
Karl Burtram
e73a8ddca6 Update projects for netcoreapp2.1 SDK (#603)
* Update projects for netcoreapp2.1 SDK

* Fix whitespace

* Fix issue in Nuget config file
2018-04-23 17:06:52 -07:00
Karl Burtram
376cc21f12 Initial SQL Agent merge for March release (#595)
* Initial SQL Agent WIP

* Fix test build break

* wip

* wip2

* additonal SQL Agent history parsing code

* Fix namespace sorting

* Hook up agent\jobs method

* Fix broken integration test build

* Added handler for job history request (#586)

* fixed agent service tests

* added job history handler

* code review refactoring

* Turn off another failing test

* Disable failing test

* Feature/agent1 adbist (#592)

* fixed agent service tests

* added job history handler

* code review refactoring

* refactored code

* small refactor

* code review changes

* Remove unused code

* Remove unused test file

* Feature/agent1 adbist (#593)

* fixed agent service tests

* added job history handler

* code review refactoring

* refactored code

* small refactor

* code review changes

* changed constant casing

* added handler for job actions

* Reenable disabled test

* cleaned up code
2018-03-23 13:25:37 -07:00
Karl Burtram
62a519cab5 Enable docker container support in VSO integration tests (#590)
* Add container scripts for VSO builds

* Remove relative path from kubectl.exe

* Use a variable and iex for kubectl path

* Use envvar for working dir path

* Try agent directory

* Update kubeconfig path

* Write connection settings json in build script

* Output logging

* remove _work prefix

* End end point instead of service name

* Disable failing tests

* Change service name prefix so it's different than SSMS containers
2018-03-15 12:48:39 -07:00
Leila Lali
fc4282b701 fixed the issue with defualt values for options not loaded correctly (#581) 2018-02-06 20:23:23 -05:00
Karl Burtram
f18c63940e Fix test build break (#579) 2018-02-01 19:00:06 -05:00
Leila Lali
eacc0111f0 Added functions to metadata list result (#568)
* added functions to be included in metadata list result
2017-12-11 15:20:36 -08:00
Leila Lali
d20215cb19 added script as alter (#564)
* added script as alter
2017-12-07 12:49:38 -08:00
Leila Lali
e7b76a6dec Feature/script execute (#563)
* added script as execute for stored procedures
2017-12-05 13:17:51 -08:00
Aditya Bist
bc8aef6a15 fixed sproc failing peek definition (#550)
* fixed sproc failing peek definition

* changed commented out tests for peek definition
2017-11-27 15:08:22 -08:00
Leila Lali
530b66fc54 Adding new handler for script as requests (#552)
* added new scripting handler for script as request
*change the language service to get the peek definition using scripting as operatin
2017-11-27 15:04:17 -08:00
Kevin Cunnane
b8e46ce65f Support GO N syntax to execute multiple times (#551)
* Support `GO N` syntax to execute multiple times
- Plumbed through the batch execution count from the parser and used in the batch execution code path
- Functionality matches SSMS:
  - Outputs loop start/end messages that match SSMS if you're doing multi-batch execution
  - Outputs an "ignoring failure" error if an error happens during a batch
- Added tests for this
- Manually verified end to end also

* Fixing test error
2017-11-22 11:33:19 -08:00
Kate Shin
93ec9864f6 remove unused metadata queries from backup (#538) 2017-11-01 10:55:17 -07:00
Saurabh Singh
4c329921c7 Update smo (#530)
* update the version in CSPROJ

* Add the updated SMO package
2017-10-26 10:55:04 -07:00
Kate Shin
cc9beed835 Fix file browser cancel/connetion issues (#528)
* clean bindingqueue after cancel

* fileborwser fixes

* code cleanup

* re-initialize filetree whenever filter is changed

* fix test issues

* address pr comments
2017-10-26 10:54:22 -07:00
Leila Lali
f80fd8a458 added contract to cancel restore plan and close the related connections (#522) 2017-10-25 10:24:19 -07:00
Aditya Bist
97fa99a713 fixed failing integration tests (#512)
* fixed failing integration tests

* close connection after test

* undo close connection
2017-10-21 11:10:38 -07:00
Kevin Cunnane
d222af7824 Fix numerous Azure property issues (#511)
* Avoid crashing if azure edition is System.

* Add new Azure-specific options to the prototype and return through the service calls

* Send azure properties over database info request

* IsCloud should include Azure SQL DW
- Fixed references to this feature flag
- Updated edition handling to include ManagedInstance and removed AzureV1 check since it's never used and it's been retired.
2017-10-19 22:08:33 -07:00
Aditya Bist
49f0221dc8 updated smo nuget package with latest bits (#508)
* updated smo nuget package with latest bits

* added new nupkg

* fixed peek definition test

* fixed batch parser wrapper tests
2017-10-19 18:02:47 -07:00
Benjamin Russell
01c414a65a Fixing backup service tests that utilized the file browser service host 2017-10-19 14:52:00 -07:00
Benjamin Russell
4016a05b48 Actually fixing the service host requirements by using the EventFlowValidator 2017-10-19 14:39:20 -07:00
Kevin Cunnane
4b66203dfc Fix tools service crash + improve server edition naming (#506)
* Fix https://github.com/Microsoft/vscode-mssql/issues/986 and add better server edition naming
- Fixed a number of issues related to the binding queue, specifically the fact that it didn't capture exceptions that occurred on the binding thread. This caused the thread to crash the service.
  - The root cause of the error was when you get a connection error during init of the SmoMetadataProvider which threw an exception. Because of this no Binder was created, and the code would null ref later during processing
  - Added logic to handle null ref issue and other related code
  - Added a unit test for the new error handling path, and supported still returning some value in this case
- Separately, have a fix for an issue where the edition is shown as "SQL Azure" for all Azure connections. Fixing to be "Azure SQL DB" for this case and handle when the database reports as DW or Stretch instead. This maps better to users concept of what the edition should be and avoids returning what is an outdated term.

* Messed up the test - fixing this by returning the expected return object
2017-10-19 10:42:26 -07:00
Kate Shin
e52d95cebf update filebrowser expand contract and methods (#500) 2017-10-16 17:05:02 -07:00
Leila Lali
fecf56bce2 closing the default connections that are opned just for validating the connections. Added the feature to application name in the connection (#483) 2017-10-09 10:49:12 -07:00
Leila Lali
f09b9f4c30 Fixing the bug with connections on database make restore fail (#473)
* closing the connections that don't need to be open and keeping track of the connections that should stay open
2017-10-05 20:06:31 -07:00
Aditya Bist
05702182ab Task/script refactor (#476)
* scripting working with race conditions

* new service works with no race conditions

* use new scripting service and commented out tests

* refactored peek definition to use mssql-scripter

* fixed peek definition tests

* removed auto gen comment

* fixed peek definition highlighting bug

* made scripting async and fixed event handlers

* fixed tests (without cancel and plan notifs)

* removed dead code

* added nuget package

* CR comments + select script service implementation

* minor fixes and added test

* CR comments and script select

* added unit tests

* code review comments and cleanup

* fixed failing scripting tests
2017-10-03 14:41:18 -07:00