Skip to content

Commit ecb5809

Browse files
committed
RDBC-698 Range caching + RavenDB_16060Test::includeTimeSeriesAndMergeWithExistingRangesInCache_Typed
1 parent 8448b7e commit ecb5809

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+808
-154
lines changed

ravendb/documents/bulk_insert_operation.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
from typing import Optional, TYPE_CHECKING
1111

1212
import requests
13-
from ravendb import constants
13+
from ravendb.primitives import constants
1414
from ravendb.exceptions.raven_exceptions import RavenException
1515
from ravendb.http.server_node import ServerNode
1616
from ravendb.http.raven_command import RavenCommand

ravendb/documents/commands/crud.py

Lines changed: 33 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,15 @@
33
import http
44
import json
55
from typing import Optional, List
6-
from typing import TYPE_CHECKING
76
import requests
87

9-
from ravendb import constants
8+
from ravendb.documents.session.time_series import (
9+
TimeSeriesRange,
10+
TimeSeriesTimeRange,
11+
TimeSeriesCountRange,
12+
AbstractTimeSeriesRange,
13+
)
14+
from ravendb.primitives import constants
1015
from ravendb.documents.commands.results import GetDocumentsResult
1116
from ravendb.documents.queries.utils import HashCalculator
1217
from ravendb.http.misc import ResponseDisposeHandling
@@ -18,9 +23,6 @@
1823
from ravendb.http.server_node import ServerNode
1924
from ravendb.tools.utils import Utils
2025

21-
if TYPE_CHECKING:
22-
from ravendb.documents.conventions import DocumentConventions
23-
2426

2527
class PutResult:
2628
def __init__(self, key: Optional[str] = None, change_vector: Optional[str] = None):
@@ -124,7 +126,7 @@ def __init__(self):
124126
self._key: Optional[str] = None
125127
self._counters: Optional[List[str]] = None
126128
self._include_all_counters: Optional[bool] = None
127-
self._time_series_includes: Optional[List] = None # todo: AbstractTimeSeriesRange
129+
self._time_series_includes: Optional[List[AbstractTimeSeriesRange]] = None
128130

129131
self._compare_exchange_value_includes: Optional[List[str]] = None
130132

@@ -257,12 +259,31 @@ def create_request(self, node: ServerNode) -> requests.Request:
257259

258260
# todo: time series
259261
if self._time_series_includes is not None:
260-
for time_series in self._time_series_includes:
261-
path_builder.append(
262-
f"&timeseries={time_series.name}"
263-
f"&from={Utils.datetime_to_string(time_series.from_date)}"
264-
f"&to={Utils.datetime_to_string(time_series.to_date)}"
265-
)
262+
for ts_include in self._time_series_includes:
263+
if isinstance(ts_include, TimeSeriesRange):
264+
range_: TimeSeriesRange = ts_include
265+
path_builder.append(
266+
f"&timeseries={range_.name}"
267+
f"&from={Utils.datetime_to_string(range_.from_date) if range_.from_date else ''}"
268+
f"&to={Utils.datetime_to_string(range_.to_date) if range_.to_date else ''}"
269+
)
270+
elif isinstance(ts_include, TimeSeriesTimeRange):
271+
time_range: TimeSeriesTimeRange = ts_include
272+
path_builder.append(
273+
f"&timeseriestime={time_range.name}"
274+
f"&timeType={time_range.type.value}"
275+
f"&timeValue={time_range.time.value}"
276+
f"&timeUnit={time_range.time.unit.value}"
277+
)
278+
elif isinstance(ts_include, TimeSeriesCountRange):
279+
count_range: TimeSeriesCountRange = ts_include
280+
path_builder.append(
281+
f"&timeseriescount={count_range.name}"
282+
f"&countType={count_range.type}"
283+
f"&countValue={count_range.count}"
284+
)
285+
else:
286+
raise TypeError(f"Unexpected TimeSeries range {ts_include.__class__.__name__}")
266287

267288
if self._compare_exchange_value_includes is not None:
268289
for compare_exchange_value in self._compare_exchange_value_includes:

ravendb/documents/commands/multi_get.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
import requests
88

9-
from ravendb import constants
9+
from ravendb.primitives import constants
1010
from ravendb.http.misc import AggressiveCacheOptions, AggressiveCacheMode
1111
from ravendb.http.request_executor import RequestExecutor
1212
from ravendb.extensions.http_extensions import HttpExtensions

ravendb/documents/conventions.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
from typing import TypeVar
1313
from ravendb.json.metadata_as_dictionary import MetadataAsDictionary
14-
from ravendb import constants
14+
from ravendb.primitives import constants
1515
from ravendb.documents.operations.configuration import ClientConfiguration, LoadBalanceBehavior, ReadBalanceBehavior
1616
from ravendb.documents.indexes.definitions import SortOptions
1717
from ravendb.tools.utils import Utils

ravendb/documents/indexes/counters.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
from typing import Dict, Set, Optional, Callable, Union
1+
from typing import Dict, Set, Optional, Callable
22

3-
from ravendb import constants
3+
from ravendb.primitives import constants
44
from ravendb.documents.conventions import DocumentConventions
55
from ravendb.documents.indexes.definitions import (
66
FieldStorage,

ravendb/documents/indexes/index_creation.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
from abc import abstractmethod, ABC
33
from typing import Generic, TypeVar, Union, Dict, Set, Callable, Optional, List, Collection
44

5-
from ravendb import constants
5+
from ravendb.primitives import constants
66
from ravendb.documents.conventions import DocumentConventions
77
from ravendb.documents.indexes.spatial.configuration import SpatialOptionsFactory
88
from ravendb.documents.store.definition import DocumentStore, DocumentStoreBase

ravendb/documents/operations/attachments/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
import requests
88

9-
from ravendb import constants
9+
from ravendb.primitives import constants
1010
from ravendb.data.operation import AttachmentType
1111
from ravendb.documents.operations.definitions import IOperation, VoidOperation
1212
from ravendb.http.http_cache import HttpCache

ravendb/documents/operations/batch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from copy import deepcopy
22
from typing import Union, List, Dict, TYPE_CHECKING, Optional
33

4-
from ravendb import constants
4+
from ravendb.primitives import constants
55
from ravendb.documents.commands.batches import SingleNodeBatchCommand, ClusterWideBatchCommand, CommandType
66
from ravendb.documents.operations.patch import PatchStatus
77
from ravendb.documents.session.event_args import AfterSaveChangesEventArgs

ravendb/documents/operations/compare_exchange/compare_exchange.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from enum import Enum
44
from typing import Union, Optional, Generic, TypeVar, Type
55

6-
from ravendb import constants
6+
from ravendb.primitives import constants
77
from ravendb.documents.conventions import DocumentConventions
88
from ravendb.documents.commands.batches import PutCompareExchangeCommandData, DeleteCompareExchangeCommandData
99
from ravendb.documents.session.document_session_operations.misc import _update_metadata_modifications

ravendb/documents/operations/compare_exchange/compare_exchange_value_result_parser.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import json
22
from typing import Dict, Type, TypeVar, Optional
33

4-
from ravendb import constants
4+
from ravendb.primitives import constants
55
from ravendb.documents.conventions import DocumentConventions
66
from ravendb.documents.operations.compare_exchange.compare_exchange import CompareExchangeValue
77
from ravendb.json.metadata_as_dictionary import MetadataAsDictionary

0 commit comments

Comments
 (0)