Update from upstream and add support for running tests against docker redis instances by ejsmith · Pull Request #3 · shadim/StackExchange.Redis (original) (raw)
- add more tracking levels to read-state
- if PreventThreadTheft feature flag is enabled, explicitly push continuations to the thread-pool
…the feature-flag
- additional guidance on thread-theft
- use UQUWI for continuations
- remove handling from simple (non-task) results; no risk of thread-theft
Add support for TOUCH command
add async touch
add tests
fix tests build
Add Delay between calls
temp change
Update Keys.cs
fix tests
add server features support for Touch
add 3.2.1 version
fix test
The casing in the error message probably changed.
I checked the RediSearch source and found that it's been "Unsupported language" since at least August 28, 2018.
FT.OPTIMIZEhas been deprecated.
Index optimizations are now handled by the internal garbage collector in the background.
https://oss.redislabs.com/redisearch/Commands.html#ftoptimize
Started work on porting the aggregation builder class and test from JRediSearch.
Ported in static support methods.
Added Load, Limit, and SortBy
Finished adding the sortby's
Group by and apply have been ported.
Added in the
Filtermethod.Added in
Cursorbuilder method.
Made the private args member naming more consistent the rest of the
project by prefixing with an underscore.
Made this a privately settable property as this is basically what the Java version had.
Implemented
ArgsStringproperty here. This is from the JavagetArgsStringArgs list is now accessible just like the Java version.
Added in serialize redis args method...
Ported
TestAggregationstest from JRediSearch.
Kept everything as close to the original as possible.
Marked these methods obsolete in favor of the ones that use the AggregationBuilder.
Introduced new overloads for the
Aggregatemethod.
Marked the obsolete unit test as obsolete.
For completeness I added in the commands that should be issued by the setup portion of this test.
Ported in the
TestApplyAndFilterAggregationstest.Porting over the support for dealing with aggregate cursors.
Initial pass at implementing cursor delete.
Initial pass at implementing
CursorReadandCursorReadAsyncFixed issue with supplying the Redisearch command with sorting.
Fixed some assertions...
Added support for return fields.
Fixed apparently typo.
Moved this test class to be more consistent with the JRedisearch library.
Cleaned up imports here.
Initial pass at porting the tag for
AlterIndex.Current progress porting the FT.ALTER command.
Added in a new type for capturing the FT.INFO result...
The test for AlterIndex (Add) is complete.
Altered test here to meet assertions from JRediSearch.
Ported support for the FT.MGET command.
Ported the Suggestion with Builder from JRediSearch.
Ported SuggestionOptions.
Further fleshed out the suggestion options using JRediSearch as a guide.
Ported over the expanded Suggestions functionality from JRediSearch.
Ported this from JRediSearch.
Ported more tests from JRediSearch.
Fixed some silly bugs...
Ported the last three auto suggest tests from JRediSearch.
More tests ported from JRediSearch.
Implemented ability to add multiple documents at once. Started on deleting multiple documents at once...
In order to match the functionality found in JRediSearch, I'm catching RedisServerExceptions that contain the message "Document already in index".
Added support for the
INKEYSsearch query modifier.Ported in a covering test for the AggregationBuilder.
Cleaned up builder access in the Suggestion and SuggestionOptions classes.
Refactored IndexOptions to make them behave more like JRediSearch.
Removed NOSCOREIDX as that has been deprecated.
- PR feedback.
Marked AggregationBuilder as sealed because (at least initially) we don't expect any inheritance here.
Dropped the call to ToString when appending the value for "MAX" to a
SortBy clause because it isn't needed.
Changed ArgsString to a method to indicate that we're not simply
exposing internal state. Made the method internal as it's present for
test purposes.
Removed the Args property because it's not clear that we need it. It
was ported from JRediSearch because it was there.
Simplified this with a default value.
Removed calls to
ToStringin order to allow the library to worry about proper formatting.Combined constructors here to keep things a bit simpler.
Cleaned up the unused import there.
Readded the
OptimizeIndexandOptimizeIndexAsyncmethods here to preserve backwards compatibility.Returning Array.Empty instead of a new empty array each time.
Sealed the suggestion class as there should be no reason (currently) for anything to inherit from it.
Cleaned up how we're ensuring that an object to compare is not null and is of an appropriate type.
Fixed equality check so that it doesn't blow up on null values (payload specifically).
Converted the class
Withto be an enum.Now looking up these values on demand.
Reintroduced the original GetInfo API methods and changed the new ones to GetInfoParsed and GetInfoParsedAsync.
Revertered changes that turned ConfiguredIndexOptions into IndexOptions.
Added in SetNoStopwords method to match the JRediSearch api as well as
provide a conveinient means for keeping the default index options AND
specifying that no stopwords be considered.
Fixed TestStopwords unit test by specifying STOPWORDS 0 by calling
SetNoStopwords which adds the DisableStopWords option to the
configured index options.
Since this optimization doesn't exist anymore it should be removed from your index definitions.
Added back the original get suggestions method, but this time it calls the new version which leverages the suggestion builder.
Added a small covering test.
- Consolidated the constructors here as suggested by Marc.
Co-authored-by: Nick Craver nrcraver@gmail.com Co-authored-by: Marc Gravell marc.gravell@gmail.com
first steps into async-enumerable
move to the old iterator
make it compile
add missing APIs
re-hide CursorEnumerable - invent dummy enumerable APIs for now; implement KeysAsync; make pageOffset work for all; increase the default library page size, because 10 is way too small - noting that we still need to compare to 10 when building messages
missing awaits
fix range error in ValuePairInterleavedProcessorBase; fix HSCAN tests
async streams is "8.0", not "preview"
update async enumerable API
eek, the special compiler trick for spans only apples to byte - presumably due to endianness; this was allocating lots
fix page size merge fail
lib updates
fix mock tests
fix async signature detection re IAsyncEnumerable
fix bug in interleaved pair processor
fix more scanning glitches
fix resume on scans
detect and warn on thread-theft
more logs in NoticesConnectFail
add overload exposing workerCount and move CTOR's together
update XML comment to align with implementation
update according to PR feedback