summaryrefslogtreecommitdiffstats
path: root/searchcore/src/apps/proton/downpersistence.cpp
blob: 999cf6696ea7a8fee34b2682f38dd0345257feb8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include "downpersistence.h"

#include <vespa/persistence/spi/persistenceprovider.h>
#include <vespa/searchlib/util/statefile.h>
#include <vespa/document/fieldvalue/document.h>
#include <vespa/document/update/documentupdate.h>

namespace storage::spi {

namespace {

Result errorResult(Result::ErrorType::FATAL_ERROR, "Node is down");

}

DownPersistence::DownPersistence(const vespalib::string &downReason)
    : _downReason(downReason)
{
}

DownPersistence::~DownPersistence() = default;

Result
DownPersistence::initialize()
{
    return Result();
}

PartitionStateListResult
DownPersistence::getPartitionStates() const
{
    PartitionStateList list(1);
    list[0] = PartitionState(PartitionState::DOWN, _downReason);
    return PartitionStateListResult(list);
}

BucketIdListResult
DownPersistence::listBuckets(BucketSpace, PartitionId) const
{
    return BucketIdListResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}

Result
DownPersistence:: setClusterState(BucketSpace, const ClusterState&)
{
    return Result();
}

Result
DownPersistence:: setActiveState(const Bucket&, BucketInfo::ActiveState)
{
    return errorResult;
}

BucketInfoResult
DownPersistence:: getBucketInfo(const Bucket&) const
{
    return BucketInfoResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}

Result
DownPersistence::put(const Bucket&, Timestamp, Document::SP, Context&)
{
    return errorResult;
}

RemoveResult
DownPersistence:: remove(const Bucket&, Timestamp, const DocumentId&, Context&)
{
    return RemoveResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}

RemoveResult
DownPersistence::removeIfFound(const Bucket&, Timestamp,const DocumentId&, Context&)
{
    return RemoveResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}

Result
DownPersistence::removeEntry(const Bucket&, Timestamp, Context&)
{
    return errorResult;
}

UpdateResult DownPersistence::update(const Bucket&, Timestamp, DocumentUpdate::SP, Context&)
{
    return UpdateResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}

GetResult
DownPersistence::get(const Bucket&, const document::FieldSet&, const DocumentId&, Context&) const
{
    return GetResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}

CreateIteratorResult
DownPersistence::createIterator(const Bucket &, FieldSetSP, const Selection &, IncludedVersions, Context &)
{
    return CreateIteratorResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}

IterateResult
DownPersistence::iterate(IteratorId, uint64_t, Context&) const
{
    return IterateResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}

Result
DownPersistence::destroyIterator(IteratorId, Context&)
{
    return errorResult;
}

Result
DownPersistence::createBucket(const Bucket&, Context&)
{
    return errorResult;
}

Result
DownPersistence::deleteBucket(const Bucket&, Context&)
{
    return errorResult;
}


BucketIdListResult
DownPersistence::getModifiedBuckets(BucketSpace) const
{
    return BucketIdListResult(errorResult.getErrorCode(), errorResult.getErrorMessage());
}


Result
DownPersistence::split(const Bucket&, const Bucket&, const Bucket&, Context&)
{
    return errorResult;
}


Result
DownPersistence::join(const Bucket&, const Bucket&, const Bucket&, Context&)
{
    return errorResult;
}


Result
DownPersistence::move(const Bucket&, PartitionId, Context&)
{
    return errorResult;
}

}