Commit Graph
40 Commits
Author SHA1 Message Date
Brian O'Neill 57278d9322 Do not use ReliableCommand in the query execution service (#66)
* Do not use ReliableCommand in the query execution service.

* Fixing the logic to remove InfoMessage handlers from ReliableSqlConnection

* Adding test to query UDT
2016-09-26 15:42:48 -07:00
Karl Burtram 806220c4b5 Feature/autocomp options (#63)
* Enable IntelliSense settings

* Fix up some bugs in the IntelliSense settings.

* Code cleans for PR

* Fix a couple exceptions that are breaks query execute and intellisense.

* Add useLowerCase flag and settings tests
2016-09-25 12:53:28 -07:00
Anthony Dresser f22c8a7283 Feature/batch line info (#56)
* inital pipe of line numbers and getting text from workspace services

* tests compile

* Fixed bug regarding tests using connections on mac

* updated tests

* fixed workspace service and fixed tests

* integrated feedback
2016-09-22 17:58:45 -07:00
Benjamin Russell 93a75f1ff4 Format Cell Values (#62)
* WIP for ability to localize cell values

* Changing how DateTimeOffsets are stored, getting unit tests going

* Reworking BufferFileStreamWriter to use dictionary approach

* Plumbing the DbCellValue type the rest of the way through

* Removing unused components to simplify contract

* Cleanup and making sure byte[] appears in parity with SSMS

* CR comments, small tweaks for optimizing LINQ
2016-09-22 12:00:32 -07:00
Benjamin Russell 1f0240dbe0 Fixing bug by changing valid filename check to fail on whitespace (#55)
Fixing a bug from the unit tests on OSX/Unix where attempting to create a file with a name that's all whitespace succeeds when it should fail. This was passing in Windows because File.Open throws an ArgumentException when an all whitespace name is provided. In Unix systems, File.Open does not throw, causing the test to fail.

Solution is to check for whitespace in the sanity check.
2016-09-22 11:12:37 -07:00
Benjamin Russell 8f4caa80c2 Fixing bug with incorrect row count returned (#58) 2016-09-20 21:04:22 -07:00
Benjamin Russell 41198e9357 Adding sr.strings file and removing hard-coded strings (#52)
* Strings sweep for connection service

* String sweep for credentials service

* String sweep for hosting

* String sweep for query execution service

* String sweep for Workspace service

* Renaming utility namespace to match standards

Renaming Microsoft.SqlTools.EditorServices.Utility to
Microsoft.SqlTools.ServiceLayer.Utility to match the naming changes done a
while back. Also renaming them on the files that use them

* Namespace change on reliable connection

* Adding the new resx and designer files

* Final bug fixes for srgen

Fixing flakey moq package name

* Removing todo as per @kevcunnane

* Adding using statements as per @llali's comment

* Fixing issues from broken unit tests

Note: This feature contains changes that will break the contract for
saving as CSV and JSON. On success, null is returned as a message instead
of "Success". Changes will be made to the vscode component to handle this
change.
2016-09-16 16:18:25 -07:00
Sharon Ravindran 55047a0196 Save results to JSON file (#49)
* Save results to JSON file

* Code cleanup

* Code review changes

*  Changed comment
2016-09-14 16:43:10 -07:00
Mitchell Sternke f2a5654a20 Feature/reliable connection (#44)
* Initial commit of reliable connection port

* Made ReliableSqlConnection inherit from DbConnection instead of IDbConnection

* Cleanup

* Fixed autocomplete service to use reliable connection

* Fix copyright headers

* Renamed ConnectResponse.Server to ServerInfo

* Removed unused using

* Addressing code review feedback
2016-09-13 18:10:26 -07:00
Benjamin Russell 92eb1376c1 Fixing column datatype issues (#48)
This was an issue where non-string types were being read back as strings (ie, int was read back as a string) resulting in the objects coming back being completely unintelligible values. It was a very simple issue where the column datatype wasn't being set correctly in our wrapper type.
2016-09-13 15:48:30 -07:00
Karl Burtram 1671f762bf Autocomplete bug fixes (#43)
Fix-up the autocomplete support to better handle binding timeouts.
Also provide a default keyword suggestion list.
2016-09-13 15:22:57 -07:00
Sharon Ravindran 0bd084d9f1 Feature/save results as csv (#33)
* Code changes to save results as csv

*  changes to save resultset as csv

* removed csvHelper

* Retrieve right resultSet after batch execution]

* code clean up

* encode column names and use string.Join

* code review changes - property fix and rowBuilder removal

* changes to fix execution tests

* Code clean up

* Code clean up

* Test save as CSV

* Fix tests for Mac/Linux

* Add doc comment

* Add doc comments

* Delete file if exception occurs
2016-09-12 17:11:46 -07:00
Benjamin Russell 9e492f19f9 Fixing broken OSX unit test caused by inability to hide files on unix (#41) 2016-09-09 15:02:45 -07:00
Benjamin Russell 8aa3d524fc Feature: Writing Execute Results to Temp File (#35)
* WIP for buffering in temporary file

* Adding support for writing to disk for buffering

* WIP - Adding file reader, factory for reader/writer

* Making long list use generics and implement IEnumerable

* Reading/Writing from file is working

* Removing unused 'skipValue' logic

* More tweaks to file buffer

Adding logic for cleaning up the temp files
Adding fix for empty/null column names

* Adding comments and cleanup

* Unit tests for FileStreamWrapper

* WIP adding more unit tests, and finishing up wiring up the output writers

* Finishing up initial unit tests

* Fixing bugs with long fields

* Squashed commit of the following:

commit df0ffc12a46cb286d801d08689964eac08ad71dd
Author: Benjamin Russell <beruss@microsoft.com>
Date:   Wed Sep 7 14:45:39 2016 -0700

    Removing last bit of async for file writing.

    We're seeing a 8x improvement of file write speeds!

commit 08a4b9f32e825512ca24d5dc03ef5acbf7cc6d94
Author: Benjamin Russell <beruss@microsoft.com>
Date:   Wed Sep 7 11:23:06 2016 -0700

    Removing async wrappers

* Rolling back test code for Program.cs

* Changes as per code review

* Fixing broken unit tests

* More fixes for codereview
2016-09-08 17:55:11 -07:00
Mitchell Sternke f5e40d7944 Addressing feedback 2016-09-06 17:10:55 -07:00
Mitchell Sternke 93bf2af8bb Fire connection changed event when USE statements are executed 2016-09-02 16:43:32 -07:00
Benjamin Russell 0371e17028 Changes to fix code review comments and bug with handling empty batches 2016-08-24 15:25:13 -07:00
benrr101 51defc1032 Adding correct line numbers for errors 2016-08-22 13:04:12 -07:00
benrr101 91ed9aea59 Cleanup for comments/copyright 2016-08-22 12:04:43 -07:00
benrr101 943c7b9569 Wrapping up batch separation
Adding unit tests
Fixing things that got brought up from the unit tests
2016-08-19 18:24:20 -07:00
benrr101 1360fe7bde Merge branch 'dev' into feature/queryBatchProcessing 2016-08-19 15:31:02 -07:00
benrr101 f72ae9ac07 WIP adding unit tests for batch processing 2016-08-19 15:22:10 -07:00
benrr101 7202a7ed65 WIP update to support batch processing 2016-08-18 17:49:16 -07:00
benrr101 8a8104b4cf Fixing bug where select returns no messages 2016-08-18 15:14:38 -07:00
benrr101 dee490341d Stubbing out query execution settings
Adding a setting for batch separator.
Very small refactor to WorkspaceService that will create the basic
settings upon construction of the object.
2016-08-17 18:24:20 -07:00
benrr101 709123eaaf Final iteration, fixing a couple mistakes for query exceptions 2016-08-16 16:14:27 -07:00
Benjamin Russell 062c40368d Adding support for query cancellation
Query cancellation support is added via CancellationToken mechanisms that
were implemented previously. This change adds a new request type
"query/cancel" that will issue the cancellation token. Unit tests were
also added.
2016-08-15 15:23:07 -07:00
Benjamin Russell c596a0db7a Small tweaks to query execution
* Adding comments where missing
* Adding "# rows affected" only if there was 0 or more
2016-08-11 17:41:18 -07:00
Benjamin Russell 9890e828bd Adding unit tests to the updated message mechanism 2016-08-11 16:39:33 -07:00
Benjamin Russell 1be4daf41d Adding enhanced support for messages from server
* Adding error flag for Query class
* Adding message capture for messages from server (using SqlConnection
cast)
* Adding better handling of SELECT queries with 0 results
* Adding affected row count message
* Adding SqlError unwrapping (using SqlException cast)
* Removing DbException handling from QueryExecutionService and into Query
class
2016-08-11 15:45:59 -07:00
Benjamin Russell 793ad383c1 Small bug fix for unit tests 2016-08-10 16:54:56 -07:00
Benjamin Russell 68c25f506e Adding changes as requested for code review 2016-08-10 16:40:36 -07:00
Benjamin Russell 8167330e16 Finishing up unit tests 2016-08-10 15:14:56 -07:00
Benjamin Russell d783fd505b Second batch of unit tests
Making slight changes to RequestContext to make it easier to mock
2016-08-09 11:10:54 -07:00
Benjamin Russell 9f371cd0bc Unit tests, part 1 2016-08-05 18:38:21 -07:00
Benjamin Russell a5582889bf Forgot to make corresponding changes in other files 2016-08-05 15:11:58 -07:00
Benjamin Russell a06003c966 Another change for @anthonydresser 2016-08-05 15:08:28 -07:00
Benjamin Russell 0740e81dab Stub files for tests for query execution 2016-08-05 11:11:50 -07:00
Benjamin Russell 05e4c4f3a9 Final changes before V1 testing 2016-08-04 17:20:52 -07:00
Benjamin Russell 3ba22c94ac WIP for QueryExecution, mostly complete 2016-08-04 14:48:58 -07:00