* Fix response message not parsing the index advice as text in latest sdk
* add test coverage
* address code review
---------
Co-authored-by: Minh Le (from Dev Box) <leminh@microsoft.com>
* SDK 3.40.0-preview.0: Adds version bump and changelog.
* SDK 3.40.0-preview.0: Adds version bump and changelog.
* SDK 3.40.0-preview.0: Adds version bump and changelog.
* change version for release; create diffs
* added query PRs to changelog
* add note for Rename refactoring of ChangeFeedItemChange<T> to changelog
* removing 4281 since it was mislabeled. it should have been treated as Internal
* grammar error
* formatting
* case change
* Update changelog.md
Co-authored-by: Justine Cocchi <jucocchi@microsoft.com>
* removing 4317 from change log. should be internal
* add new regions to changelog. also Direct Package version update
* fixed linked to DP PR
* more changes based on review
---------
Co-authored-by: Justine Cocchi <jucocchi@microsoft.com>
* Initial code changes to add vector embedding policy and index type in container.
* Code changes to add container builder for vector index type.
* Code changes to add and fix tests.
* Revert back client create and initialize test.
* Skipping some of the V2 tests for vector indexes.
* Code changes to fix GA and preview contracts.
* Code changes to address review comments part 1.
* Removed unnecessary JSON argument for vector index.
* Code changes to update contract changes.
* Code changes to update preview contract changes in tests.
* Code changes to address few review comments.
* Code changes to add few more tests to validate serialization and deserialization.
* Code changes to address some review comments for best practices.
* Code changes to fix test failures.
* sketch out improved ParallelPrefetcher; focus is on reducing allocations, but we also can't be substantially slower to start all tasks
* little more cleanup to further reduce allocations, and save a tiny amount of CPU
* start on testing
* some tweaks and testing for buffer management
* test exception handling; fix a bug in high concurrency case that would swallow exceptions
* test cancellation
* more testing, a little bit of cleanup
* test the case where the enumerator faults; fixes a couple leaks of Tasks and buffers that could occur in that some places
* tiny bit of cleanup
* cleanup and expand comments; code is tricky, it needs documentation
* address a whole bunch of style nits, just to keep compiler Message counts down
* address some feedback on comment clarity
* don't rely on finalizers for testing, it's too brittle; hold up was not allocating more in the non-test cases, but found a field to reuse; needs benchmarking
* complete ITrace proxy for testing
* style nits and a bit more commentary
* explicit test for concurrent access to the inner IEnumerator
* explicit test that IEnumerator is disposed
* explicitly implement all ITrace members
* address feedback: internal class members should be public or private
* address feedback: break test-only bits of ParallelPrefetch out into a partial
* address feedback: move const above type declarations
* address feedback: naming nits
* address feedback: use the existing NoOpTrace
* address feedback: remove pointless using
* update baseline trace text for QueryAsync test
---------
Co-authored-by: neildsh <35383880+neildsh@users.noreply.github.com>
* preliminary change
* Add some more boiler plate code
* move all linq test to the same folder; add some groupBy test
* fix references error in test refactoring
add code for group by substitution. Still need to adjust binding post groupby
* preliminary for the groupby functions with key and value selector
* trying to change collection inputs for group by
* WIP bookmark
* Successfully ignore "key"
* clean up code
* Sucessfully bind the case of group by with only key selector and no value selector followed by an optional select clause
* enable one group by test
* add support for aggregate value selector
* added baseline
* working on adding support for multivalue value selector and key selector
* code clean up
* more clean up
* more clean up
* update test
* Move test to separate file
* code clean up
* remove baseline file that got moved
* fix merge issue
* Changes test infrastructure to reflect changes from Master
* address code review part 1
* Address code review 2 and adds code coverage
* Addressed code review and added tests. Still a couple of bugs to iron out
* Fix group by translation issue and add more test
* update comments
* address pr comment
---------
Co-authored-by: Minh Le <leminh@microsoft.com>
Co-authored-by: Aditya <adityasa@users.noreply.github.com>
* Initial prep for adding a non streaming order by query pipline stage
* Change TracingAsyncEnumerator to be an adapter class between ITracingAsyncEnumerator and IAsyncEnumerator
* Move TracingAsyncEnumerator to product code
* Change ITracingAsyncEnumerator.MoveNext to take a CancellationToken, thereby removing the awkward method SetCancellationToken from IQueryPipelineStage
* draft implementation of non streaming order by pipeline stage
* Fix bug that drops first record on an initialized page
* Add a test class for non streaming order by unit tests
* remove unnecessary usings
* Add an emulator test for non streaming order by. Also lay groundwork for an alternative implementation for non streaming order by
* Remove the ResponseLengthInBytes property from QueryPage. This was being calculated incorrectly, and seems to be unused to boot.
* Add an ItemCount property to the Page class
* Add a multi level heap implementation for non streaming order by
* Add infrastructure for writing parity tests
* Fix a bug that caused the page enumerator to be dropped when we reach flat heap sizze limit
* When cloning OrderByQueryPartitionRangePageAsyncEnumerator as a fully buffered enumerator, make sure that we set the page size to maximum for the backend requests
* Simplify the non streaming pipeline stage, and add performance test
* Revert the changes for Headers.ItemCount Keep it as a string
* Avoid an allocation each time the OrderByItems property of OrderByQueryResult is touched
* Fix up the OrderByPipelineSatgeBenchmark to use fully materialized CosmosElements in the oages returned from MockContainer
* Add a few more unit tests for non streaming order by
* Add emulator tests for non streaming order by
* Add a few more integration test cases
* Fix up broken unit test
* Add more test coverage for the non streaming order by
* If there is no continuationtoken, assume that the response is streaming
* Add stronger validation to the non streaming order by unit tests
* Fix up broken unit tests to account for ItemCount
* fix up plumbing for index utilization, and incorporate code review feedback
* Minor clean up
* revert bug introduced in pursuit of more elegant code :)
* fix up broken unit test
* Fix up broken perf test
* Fix up broken IndexMetricsParserBaselineTest
* Minor bug fixes for OrderByCrossPartitionEnumerator
* preview cfp ffcf
* ran updatecontracts
* including this in Encryption
* fixing name onChangesDelegate
* sdkproject on encryptioncontainer
* try this again
* try, try, try again
* with impl
* Fixes Multi-Region CI pipeline to include env variable
* fixed space
* added validation test
* string conversion
* temp
* temp2
* Update Microsoft.Azure.Cosmos/tests/Microsoft.Azure.Cosmos.EmulatorTests/ClientTests.cs
Co-authored-by: Matias Quaranta <ealsur@users.noreply.github.com>
* Update Microsoft.Azure.Cosmos/tests/Microsoft.Azure.Cosmos.EmulatorTests/ClientTests.cs
Co-authored-by: Matias Quaranta <ealsur@users.noreply.github.com>
* changed env location
* temp
* test
* space
* remove env
* possible fix
* test fix
* clean up
* changed enviroment variable get
* test
* test fix
* ensure multiregion tests do not run with regular emulator tests
---------
Co-authored-by: Matias Quaranta <ealsur@users.noreply.github.com>
* test to prove no exception, no documents when change feed more is changed.
* renaming
* throwing exception when changeFeedMode change on CFP with same lease container
* removed PREVIEW tags under advisement. Well create a PR later
* removed usings
* revert to old summary
* defaulting change feed mode to latestversion
* change feed mode exception on switching and tests based on last recommendation.
* more changes based on discussions
* some refactoring
* fixed some tests
* more changes based on recommendations
* another refactor
* change from CosmosException to ArgumentException
* removed CosmosException from comments
* fixin tests to account for extra GetAllLeasesAsync call
* some recommendation changes
* adding a test to repro issue 4285
* fix plus e2e test
* not all request have cosmos exception
* add a quick unit test for ChangeFeedEstimatorIterator when Gone exception happens
* added a test description
* ignoring long running test. meant to be ran manually
* move long running tests to its own folder and category; check response and header for status/substatus
* one test category only, removed using, and exluding LongRunning category from build pipeline
* Update templates/build-test.yml
I am committing your suggestion. Also, the goal of this PR is not to executed long running tests. I will create a new PR for this. Because there are other unknowns that I need to answer. So for now, I just don't want it to be executed with the existing pipelines.
Co-authored-by: Matias Quaranta <ealsur@users.noreply.github.com>
* change name of connectionString ENV to something more intention revealing
---------
Co-authored-by: Matias Quaranta <ealsur@users.noreply.github.com>
Co-authored-by: Sourabh Jain <sourabhjain@microsoft.com>
* disable network level tracing in sdk
* Revert "disable network level tracing in sdk"
This reverts commit 627cba6404.
* Including Client Configuration in request Diagnostics for Sync calls also